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 v3] sysdeps/nanosleep: Use clock_nanosleep_time64 if avaliable


* Joseph Myers:

> On Fri, 1 Nov 2019, Alistair Francis wrote:
>
>> The nptl/check-abi-libpthread test is failing on a large number of
>> archs. This is what seems to be failing, although I can't figure out
>> why:
>
> Because you're removing nanosleep from pthread-compat-wrappers.
>
> If you want to remove a symbol from libpthread that is duplicated in libc, 
> you need to make sure that, for *every* glibc configuration[*], the symbol 
> versions of that symbol in libpthread are a subset of the symbol versions 
> of that symbol in libc.  If that is the case, you can remove the symbol 
> from libpthread, updating all the ABI test baselines at the same time. See 
> many patches of Florian's for examples of moving a symbol from libpthread 
> to libc.  If some symbol version isn't already in libc, it needs to be 
> added there (see the move of clock_*, for example).

And it has to be added at the version currently under development,
otherwise applications which link against that symbol will encounter
various obscure failures when running on older glibc versions, rather
than the (now standard) missing symbol version failure.

> I think such changes to remove duplicate function definitions from 
> libpthread are to be encouraged, now that it's possible to move a 
> versioned symbol (from another library to libc) that way.  But they should 
> *not* be mixed in with other changes to how the function is implemented, 
> and you do need to check that all required symbol versions are already in 
> libc as described above.  If moving two symbols at once (as in this patch 
> which affects both nanosleep and __nanosleep) you need to make such a 
> check for both symbols.

I agree.


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