This is the mail archive of the
mailing list for the glibc project.
Re: [PATCH v8 6/8] nptl: Add abilist symbols for C11 threads
On 13/07/2018 14:49, Florian Weimer wrote:
> On 07/13/2018 05:49 PM, Adhemerval Zanella wrote:
>> Thanks for all the reviews, I have updated my personal branch  with
>> all you required changes:
> Thank you for your patience. This is looking really good now.
>> - ABI fixes for mips-gnu-linux-soft.
> I can confirm that these are fixed.
>> - pthread_create / pthread_join cast inconsistency.
>> - sysdeps/nptl/threads.h moved to nptl/threads.h.
>> - thrd_sleep is now a cancellable entrypoint.
>> - once_flag and ONCE_FLAG_INIT and __ONCE_ALIGNMENT definition.
> Should the type be a struct?
> I think ONCE_FLAG_INIT needs to be a compound literal, not an initializer, at least that's how I read the standard (“which expands to a value that can be used to initialize an object”).
Right, you are correct, this will prevent ONCE_FLAG_INIT to be wrongly
used to initialize other objects than once_flag. I adjust to be a
struct as well.
>> - thread_local guards for C++.
> Missing indentation of the #define. The manual could mention that for C++, C++11 or later needs to be used to get the thread_local keyword (not the macro).
Ack and I added a note on manual about C++11 requirement.
>> - TSS_DTOR_ITERATIONS assert check.
>> I am not sure about the thread error code mapping to errno, it will
>> required tying POSIX error code to C11 use some internal mechanism
>> It will most like require generate a platform-specific file
>> auto-generated from errno definitions (more build complexity), and
>> I am not sure if this micro-optimization will really yields any
>> measurable gain.
> I'm fine with leaving it as is.