1 |
On 09/17/14 16:13, Markos Chandras wrote: |
2 |
> -----BEGIN PGP SIGNED MESSAGE----- |
3 |
> Hash: SHA512 |
4 |
> |
5 |
> On 09/17/2014 08:52 PM, Anthony G. Basile wrote: |
6 |
>> On 09/17/14 15:41, Markos Chandras wrote: On 09/17/2014 08:13 PM, |
7 |
>> Anthony G. Basile wrote: |
8 |
>>>>> On 09/17/14 13:50, Markos Chandras wrote: On 09/17/2014 02:38 |
9 |
>>>>> PM, Ian Stakenvicius wrote: |
10 |
>>>>>>>> On 17/09/14 04:31 AM, Micha³ Górny wrote: |
11 |
>>>>>>>>> Dnia 2014-09-13, o godz. 10:47:49 Markos Chandras |
12 |
>>>>>>>>> <hwoarang@g.o> napisa³(a): |
13 |
>>>>>>>>>> Here is some weirdness with eg mips64/n32 multilib |
14 |
>>>>>>>>>> profile when trying a world update |
15 |
>>>>>>>>>> |
16 |
>>>>>>>>>> [ebuild U ] sys-devel/libtool-2.4.2-r1:2 |
17 |
>>>>>>>>>> [2.4.2:2] USE="-static-libs {-test} -vanilla" |
18 |
>>>>>>>>>> ABI_MIPS="(n32%*) o32%* -n64%" 0 kB |
19 |
>>>>>>>>>> |
20 |
>>>>>>>>>> As you can see n32 and o32 are enabled but n64 is |
21 |
>>>>>>>>>> not. Obviously this is not full mips64 multilib. |
22 |
>>>>>>>>>> This is probably due the portage profile |
23 |
>>>>>>>>>> stacking/inheritance problems on mips64, where the |
24 |
>>>>>>>>>> mips64/multilib profiles inherit the default o32 |
25 |
>>>>>>>>>> one. Michal (multilib CC'd) can provide more |
26 |
>>>>>>>>>> information on what exactly goes wrong since he |
27 |
>>>>>>>>>> understands the problem better than me. Michal |
28 |
>>>>>>>>>> also said that on amd64, the multilib profiles |
29 |
>>>>>>>>>> defaults to 64-bit only. I believe this contradicts |
30 |
>>>>>>>>>> with what someone expects from MIPS64 where all |
31 |
>>>>>>>>>> three ABIs need to be present *by default* unless |
32 |
>>>>>>>>>> you override the ABI_MIPS variable in make.conf. |
33 |
>>>>>>>>>> Correct? |
34 |
>>>>>>>>> Well, long story short we inherit from 'top-level' |
35 |
>>>>>>>>> profile that has some o32 settings inside. I believe |
36 |
>>>>>>>>> that it could be saner to move those from |
37 |
>>>>>>>>> arch/mips/mips64 -> arch/mips/mips64/o32 (like we |
38 |
>>>>>>>>> have /n32 and /n64 there), so that instead of having |
39 |
>>>>>>>>> to unset them, we'd just have them set for the |
40 |
>>>>>>>>> relevant real profiles. However, I'm not sure if this |
41 |
>>>>>>>>> doesn't come with some pitfalls. |
42 |
>>>>>>>> Blueness and I talked about this (proper n32 / n64 / |
43 |
>>>>>>>> o32 defaults and forces/masks) in #gentoo-dev two or |
44 |
>>>>>>>> three weeks ago; I thought we worked out the correct |
45 |
>>>>>>>> modifications to profiles to get it right and he had |
46 |
>>>>>>>> already pushed the fixes... ?? |
47 |
>>>>> I can't see anything. Did you actually push them? What was |
48 |
>>>>> decided as the plan for action? |
49 |
>>>>> |
50 |
>>>>>> I did not have time to get to them. I was going to play |
51 |
>>>>>> with two different approaches. One is simply turning off |
52 |
>>>>>> o32 at multilib/../n32 level, the other was to restructure |
53 |
>>>>>> the profiles entirely and put o32, n32 and 64 on par, not |
54 |
>>>>>> inherit from a hire level "default" profile. I'm leaning |
55 |
>>>>>> towards that approach, but I'm worried it might play havoc |
56 |
>>>>>> on our users. |
57 |
>> Well i need to see the structure for your second approach to |
58 |
>> understand what you have in mind. Perhaps the first option is the |
59 |
>> safest and ensure some backwards compatibility with existing |
60 |
>> mips32 users? |
61 |
>> |
62 |
>>> Yes it would be more backwards compat, but it is not semetrical. |
63 |
>>> The regular (ie glibc) profiles would become: |
64 |
>>> [1] default/linux/mips/13.0/o32 <-change [2] |
65 |
>>> default/linux/mips/13.0/n32 [3] default/linux/mips/13.0/n64 [4] |
66 |
>>> default/linux/mips/13.0/multilib/o32 <-change [5] |
67 |
>>> default/linux/mips/13.0/multilib/n32 [6] |
68 |
>>> default/linux/mips/13.0/multilib/n64 [7] |
69 |
>>> default/linux/mips/13.0/mipsel/o32 <- change [8] |
70 |
>>> default/linux/mips/13.0/mipsel/n32 [9] |
71 |
>>> default/linux/mips/13.0/mipsel/n64 [10] |
72 |
>>> default/linux/mips/13.0/mipsel/multilib/o32 <-change [11] |
73 |
>>> default/linux/mips/13.0/mipsel/multilib/n32 [12] |
74 |
>>> default/linux/mips/13.0/mipsel/multilib/n64 |
75 |
> I think that if you symlink the following |
76 |
> |
77 |
> default/linux/mips/13.0/eapi -> default/linux/mips/13.0/o32/eapi |
78 |
> default/linux/mips/13.0/parent -> default/linux/mips/13.0/o32/parent |
79 |
> |
80 |
> existing default/linux/mips/13.0/ users will be unaffected. But I am |
81 |
> not sure if we are allowed to use symlinks (same thing for mipsel) |
82 |
> |
83 |
> If we can't avoid it then we can send the usual email to the lists |
84 |
> informing users for the change. I believe it's not hard for them to |
85 |
> figure out what changed and how to select the proper profile for their |
86 |
> mips32 boxes. |
87 |
|
88 |
Let me test first the new profiles. I will put them on the |
89 |
hardened-dev::profile overlay. I know they're not hardened, but we do |
90 |
testing of big changes to profiles there. Then you can review what I've |
91 |
done. |
92 |
|
93 |
I'm not sure about the sym links either. |
94 |
|
95 |
|
96 |
> - -- |
97 |
> Regards, |
98 |
> Markos Chandras |
99 |
> -----BEGIN PGP SIGNATURE----- |
100 |
> Version: GnuPG v2 |
101 |
> |
102 |
> iQF8BAEBCgBmBQJUGetvXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w |
103 |
> ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRGRDlGMzA4MUI2MzBDODQ4RDBGOEYxMjQx |
104 |
> RjEwRUQ0QjgxREVCRjE5AAoJEB8Q7UuB3r8ZA2UH/j9O3h3cuvoFEJnRFvGOoLHF |
105 |
> c0tQykVpAjcJm4G6fEDLS1+soRl+U8PENxM3cnqEeLWsz9qRTyB9QJCF6s2cg6tr |
106 |
> /7eUWn3OnFD5jSW9A16BiX0vpKGCdJFz30HDN6zFJpuOj2jhKOeZplNgDICQtJr2 |
107 |
> yBsv7q9rN99MQc/hEQK8tvffIibrVNlNIyKb6YoRuzuPycu5v6thiTFwPSyWh8Q/ |
108 |
> qqdokI024Qg4DqGhwSd1puq2iISaT4xH2Fn6ZgR0pyHFwy0bQx9IRNe0cjZfP2yJ |
109 |
> biCZqcG0S5VOFv161FbnA3EyutuFIzRJs60EqnyjkezlDvXJqNOmTdePYdS5/T4= |
110 |
> =TPCw |
111 |
> -----END PGP SIGNATURE----- |
112 |
> |
113 |
|
114 |
|
115 |
-- |
116 |
Anthony G. Basile, Ph.D. |
117 |
Gentoo Linux Developer [Hardened] |
118 |
E-Mail : blueness@g.o |
119 |
GnuPG FP : 1FED FAD9 D82C 52A5 3BAB DC79 9384 FA6E F52D 4BBA |
120 |
GnuPG ID : F52D4BBA |