This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCHv3] powerpc: ABI change - add HWCAP/HWCAP2/platform info to TCB
- From: "Carlos O'Donell" <carlos at redhat dot com>
- To: Carlos Eduardo Seo <cseo at linux dot vnet dot ibm dot com>
- Cc: munroesj at linux dot vnet dot ibm dot com, Peter Bergner <bergner at vnet dot ibm dot com>, Roland McGrath <roland at hack dot frob dot com>, Joseph Myers <joseph at codesourcery dot com>, GNU C Library <libc-alpha at sourceware dot org>, Tulio Machado <tuliom at linux dot vnet dot ibm dot com>, "Steven J. Munroe" <sjmunroe at us dot ibm dot com>
- Date: Fri, 9 Oct 2015 16:17:14 -0400
- Subject: Re: [PATCHv3] powerpc: ABI change - add HWCAP/HWCAP2/platform info to TCB
- Authentication-results: sourceware.org; auth=none
- References: <4BE991CB-F601-4D63-A416-5991FE870FC4 at linux dot vnet dot ibm dot com> <alpine dot DEB dot 2 dot 10 dot 1509232114070 dot 10585 at digraph dot polyomino dot org dot uk> <B650304C-6207-46AC-B6A8-FA29959B305D at linux dot vnet dot ibm dot com> <alpine dot DEB dot 2 dot 10 dot 1509232141250 dot 10585 at digraph dot polyomino dot org dot uk> <1443046986 dot 23503 dot 68 dot camel at otta> <alpine dot DEB dot 2 dot 10 dot 1509232234500 dot 10585 at digraph dot polyomino dot org dot uk> <1443050731 dot 23503 dot 78 dot camel at otta> <alpine dot DEB dot 2 dot 10 dot 1509232340470 dot 10585 at digraph dot polyomino dot org dot uk> <1443057751 dot 13186 dot 6 dot camel at otta> <alpine dot DEB dot 2 dot 10 dot 1509240126140 dot 10585 at digraph dot polyomino dot org dot uk> <1443058522 dot 13186 dot 9 dot camel at otta> <1443654009 dot 4885 dot 4 dot camel at oc7878010663> <B2EB15A6-FEB5-4DBA-8719-0BAA5B65EF5E at linux dot vnet dot ibm dot com> <5615CD5D dot 1080409 at redhat dot com> <1444318222 dot 12222 dot 8 dot camel at oc7878010663> <56181C45 dot 70003 at redhat dot com> <7357C93E-1D39-4312-8215-CBEC914B0367 at linux dot vnet dot ibm dot com>
On 10/09/2015 04:14 PM, Carlos Eduardo Seo wrote:
>
>> On Oct 9, 2015, at 4:57 PM, Carlos O'Donell <carlos@redhat.com> wrote:
>>
>> That's up to you to prove by looking at the places where you've added
>> the initialization sequences. My guess is that you're probably good because
>> all of these sequences are run before main and before any thread is created
>> and before any CTORs are run. I'd like you to verify that though.
>>
>> In which case the next steps are:
>> - Remove ppc.h functions.
>> - Verify all init is done before CTORs
>> - Post smaller v4 patch.
>
>
> I believe weâre good because the data we need in the TCB must be initialized before the first call to TLS_INIT_TP. That means:
>
> - in _dl_sysdep_start for the dynamic linking case
> - in __libc_start_main for the static linking case
>
> This should guarantee that the TCB is initialized with the data we need before main, or any other thread, or CTORs are run.
Looks good to me.
The worst thing that can happen is this turns out to be
wrong and we just move the initialization earlier and
the distributions have to patch and update. No ABI impact.
Cheers,
Carlos.