This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v3] sysdeps/nanosleep: Use clock_nanosleep_time64 if avaliable
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Alistair Francis <alistair dot francis at wdc dot com>
- Cc: <libc-alpha at sourceware dot org>, <alistair23 at gmail dot com>
- Date: Fri, 1 Nov 2019 17:14:39 +0000
- Subject: Re: [PATCH v3] sysdeps/nanosleep: Use clock_nanosleep_time64 if avaliable
- Ironport-sdr: 2V4KzRRlfDnl8zQR2NCJTmzcGR4hmTU7hVkcNiOh+T0BShaxjBugW/NCeao8UuYzT+eXiDeJ6y Mi00YIh3WbBSAnFpJL6XWprbhnlS9BpQMc2oQFh93OtlWjU3v3C35qkTA3FnYHehi1rwDWBrbU qiN5Rh9SdPK/GGqGGSj6T+lmaThI2sWLbTNMDToM+8Xx7RMV7u6y8ewtCYDXaPAxrB9dbTHqSb zwD15E0244mP8Haef5qTYg2HuUeqpf3ncxzqq8/3X4VyRIJLE03Uh4yMJLo/rJMju5nqMPODgy /Mc=
- Ironport-sdr: z1g+pn2aHZkJ4VUnboa3tO8XDd5PwQOCfnFCBjIHoPysC0sQictT0cybk7qVb5gIhNpaNJTbnS kWhiilhvOTqc+1mn87SuL+VhtY8rNLDMWcbfWlpa+62q9wJ5REGdQiHUZ6Im21zLI/lM6ZHs4U HYozuQILQADTSeFtO4HSlL2u7qHq87fCmZxMC7ZRLUMW/xMsnhyBX5ykLz1mc1I4Th729gOLTf NHxyJIGBXILEVEO6OXpBPnn+XlkKVi9uBzxS7iTQGc64OJqBEOjZciSRTsxj25z118fcxeY5H0 vd4=
- References: <20191101095707.6208-1-alistair.francis@wdc.com>
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).
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.
[*] That is, every configuration where you're removing the symbol from
libpthread. If your change is only for NPTL, you don't need to be
concerned with Hurd.
--
Joseph S. Myers
joseph@codesourcery.com