Subject: Re: [PATCH] Add hwcap2 bits for POWER9

From: "Tulio Magno Quites Machado Filho" <[email-masked]>
Date: Mon, 11 Jan 2016 17:55:37 -0200

"Carlos O'Donell" <[email-masked]> writes:

> On 01/11/2016 10:16 AM, Tulio Magno Quites Machado Filho wrote:
>> Adhemerval Zanella <[email-masked]> writes:
>> 
>>> On 08-01-2016 13:36, Peter Bergner wrote:
>>>> On Fri, 2016-01-08 at 11:25 -0200, Tulio Magno Quites Machado Filho wrote:
>>>>> Peter, this solves the issue you reported previously [1].
>>>>>
>>>>> [1] https://sourceware.org/ml/libc-alpha/2015-12/msg00522.html
>>>>
>>>> Agreed, thanks.  I'll also add the POWER9 support to the GCC side
>>>> of the patch now that the glibc code is upstream.
>>>
>>> I do not see these bits being added in kernel side yet and GLIBC usual
>>> only sync these kind of bits *after* they are included in kernel side.
>>> So I would advise to either get these pieces (kernel support and hwcap
>>> advertise) in kernel before 2.23 release, otherwise revert the patches.
>> 
>> Ack.
>> It has just been sent to the correspondent Linux mailing list:
>> https://lists.ozlabs.org/pipermail/linuxppc-dev/2016-January/137763.html
>
> Please revert the changes from glibc until you checkin support to linux
> kernel mainline.
>
> Leaving these bits in increases the risk that someone uses to deploy a glibc
> that then may have the wrong value.

Could you clarify this statement, please?
I fail to see how they could have the wrong value.

These bits are enabled if you're running a kernel on a processor that
supports ISA 3.0 and/or VSX IEEE Float 128-bit.  The kernel must also support
this processor.

I see 3 possible scenarios:
 - Processor that doesn't support these features: as these bits are 0 by
   default, they have the correct value.
 - Both processor and kernel support these features: both bits are set,
   which is the correct value.
 - Processor support these features, but an old kernel doesn't support: these
   bits would be 0.  But, that's a valid scenario.

Am I missing another scenario?

However, I do agree with the concerns raised by Peter and Adhemerval: glibc
should be in sync with the kernel by the time of the release in order to
guarantee both bits are reserved for the exact same goal and we should have
both AT_HWCAP and AT_PLATFORM supporting the new processor.
With that said, I was planning to revert both commits d2de9ef7 and b1f19b8e
if we don't get the kernel patch accepted into the powerpc tree in time for
the release 2.23.

-- 
Tulio Magno