This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Recognizing the main thread based on its thread descriptor
- From: Adhemerval Zanella <adhemerval dot zanella at linaro dot org>
- To: libc-alpha at sourceware dot org
- Date: Wed, 10 May 2017 09:30:14 -0300
- Subject: Re: Recognizing the main thread based on its thread descriptor
- Authentication-results: sourceware.org; auth=none
- References: <e89a9f03-3e98-91c1-dda2-cc4d93244929@redhat.com>
On 10/05/2017 06:28, Florian Weimer wrote:
> Is there an internal way to tell if the current thread is the main thread?
>
> I need this to allocate thread-local state in a particular way (the main thread needs to get a copy of the global variable for backwards compatibility). Currently, this is handled with an initializer for the TLS variable and an override during pthread_create. I want to switch this to dynamic initialization.
>
> I can probably come up with a clever hack to express this, but I would prefer something explicit.
>
> Thanks,
> Florian
Most straightforward way I can think of is add a global variable to hold
main thread pointer and set it on dl_main.