This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] change GLIBC PPC64/ELF2 ABI default to 2.17


On 01/30/2014 04:59 PM, Adhemerval Zanella wrote:
> On 30-01-2014 13:52, Andreas Jaeger wrote:
>> On 01/30/2014 04:55 PM, Steven Munroe wrote:
>>> On Thu, 2014-01-30 at 16:24 +0100, Andreas Schwab wrote:
>>>> Steven Munroe <munroesj@linux.vnet.ibm.com> writes:
>>>>
>>>>> yes the 2.18 and 2.17 back ports must have forward compatible with
>>>>> GLIBC-2.19, which the normal requirement. I and not asking for change to
>>>>> the GLIBC-2.19 ABI. I am asking to change the GLIBC DEFAULT symbol for
>>>>> the new PPC64LE platform to be 2.17.
>>>> But you _are_ changing the GLIBC 2.19 ABI.  Changing the baseline will
>>>> *remove* all versioned symbols from the old baseline that didn't receive
>>>> a new version in between.
>>>>
>>> We are not change the current Big Endian ABI which must include symbols
>>> back to GLIBC-2.3. That ABI continues unchanged.
>>>
>>> Look at the patch:
>>>
>>>  powerpc64-.*-linux.*   libpthread=0            GLIBC_2.3
>>> -powerpc.*le-.*-linux.* libpthread=0            GLIBC_2.18
>>> +powerpc.*le-.*-linux.* libpthread=0            GLIBC_2.17
>>>
>>> The current PPC64 BE ABI is not changing.
>>>
>>> Do you object to the current state where DEFAULT is GLIBC-2.18. Are your
>>> suggesting we disallow Adam's port? If not why would you object to
>>> allowing Carlos' port? And debian, Fedora, and ...
>> You're changing the Little Endian ABI - and thus will break all existing
>> users that used the current glibc 2.19 that is in freeze now.
>>
>>> We are only changing this for the PPC64 Little endian ELF2 ABI. We
>>> should remove most of the old compatibility symbols from before what
>>> ever we agree the new "year zero" should be. 
>>>
>>> We only debating the "year zero" Default version for an new ABI for a
>>> new platform.
>> But changing this "year zero" means that everybody that is using the
>> current setting needs to bootstrap the complete distribution again.
>>
>> After this change, every binary build against current glibc git, will
>> not work anymore, it needs to be rebuild against the new one.
>>
>> Andreas
> 
> Yes Andreas, we are aware of this *huge* inconvenience and we believe the
> current status of the ecosystem (no current *released* distro, not current
> *release* chip to support it) makes such change still somewhat feasible.
> We are weighting the pros and cons, and the resulting outcome (increasing
> the distro support and ecosystem) is what we are aiming now.

Thanks for the clear words - looking at Steven's email it didn't show to
me that it was clear to him what the impact of the proposed change is.

Yes, there's no distro released that I'm aware of - and that's why I'm
not vetoing it. Still, the attitude shown that you can break an API mere
days before the release, let's me be very careful.

Doing a backport to 2.17 was a bad choice - and not telling us here
earlier as well.

So, moving forward: Will there no more such breakages and can
distributions rely on a stable API of the released glibc 2.19 on
PowerPC64 Little Endian the same way that x86 and x86-64 users can rely
on it? Meaning: Any binary build against 2.19 will work with future
versions.

Andreas
-- 
 Andreas Jaeger aj@{suse.com,opensuse.org} Twitter: jaegerandi
  SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
   GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg)
    GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]