This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Fwd: local equivalent for pthread_once() in glibc?
- From: Adhemerval Zanella <adhemerval dot zanella at linaro dot org>
- To: Florian Weimer <fweimer at redhat dot com>, libc-alpha at sourceware dot org
- Date: Mon, 26 Jun 2017 09:13:50 -0300
- Subject: Re: Fwd: local equivalent for pthread_once() in glibc?
- Authentication-results: sourceware.org; auth=none
- References: <9EBFE06E-AF1D-48E9-85AB-B74C048438B1@oracle.com> <F050C948-50BF-4305-84AC-9003F97D9F59@oracle.com> <be02ff5c-0313-29b2-e807-1a618559ec9c@redhat.com> <ff82b3b2-e282-9d88-775f-9fb46296787f@linaro.org> <d8588f17-b5b6-181d-2e97-7de012e89244@redhat.com> <6e7c1667-bc63-e999-9b53-b0ca221c90a8@linaro.org> <f9d991c7-ae6e-5fec-d773-512d1239059b@redhat.com>
On 25/06/2017 12:46, Florian Weimer wrote:
> On 05/17/2017 04:51 PM, Adhemerval Zanella wrote:
>> Right, but this is not seem the case for tunable where malloc_consolidate is
>> called from ptmalloc_init (at least for main_arena). In any case, I still
>> think that for adequate __malloc_initialized access using C11 atomic since
>> its access is still done concurrently (that why I asked if using __libc_once
>> would be simpler).
>
> I don't understand. The concurrent access solely consists of reads. We
> do not use atomics in that case.
My understanding and my point is even for these cases we should aim for
C11 atomic accesses, even for relaxed loads which on most architectures
will map to normal loads.