glibc/sysdeps/nptl
Adhemerval Zanella 215078017f nptl: Replace non cancellable pause/nanosleep with futex
To help y2038 work avoid duplicate all the logic of nanosleep on
non cancellable version, the patch replace it with a new futex
operation, lll_timedwait.  The changes are:

  - Add a expected value for __lll_clocklock_wait, so it can be used
    to wait for generic values.

  - Remove its internal atomic operation and move the logic to
    __lll_clocklock.  It makes __lll_clocklock_wait even more generic
    and __lll_clocklock slight faster on fast-path (since it won't
    require a function call anymore).

  - Add lll_timedwait, which uses __lll_clocklock_wait, to replace both
    __pause_nocancel and __nanosleep_nocancel.

It also allows remove the sparc32 __lll_clocklock_wait implementation
(since it is similar to the generic one).

Checked on x86_64-linux-gnu, sparcv9-linux-gnu, and i686-linux-gnu.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
2019-10-31 11:09:01 -03:00
..
bits Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
sys Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
aio_misc.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
allocrtsig.c nptl: SIGCANCEL, SIGTIMER, SIGSETXID are always defined 2019-10-18 14:29:04 +02:00
dl-tunables.list Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
fork.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
fork.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
futex-internal.h Consolidate futex-internal.h 2019-10-31 11:08:54 -03:00
gai_misc.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
Implies
internaltypes.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
jmp-unwind.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
libc-lock.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
libc-lockP.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
librt-cancellation.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
lowlevellock-futex.h Consolidate lowlevellock-futex.h 2019-10-31 11:08:57 -03:00
lowlevellock.h nptl: Replace non cancellable pause/nanosleep with futex 2019-10-31 11:09:01 -03:00
Makeconfig Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
Makefile Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
malloc-machine.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
proc_service.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
pthread-functions.h nptl: Move pthread_attr_setschedparam implementation into libc 2019-10-07 20:00:38 +02:00
pthread.h Split up endian.h to minimize exposure of BYTE_ORDER. 2019-10-01 14:54:46 -07:00
setxid.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
shm-directory.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
stdio-lock.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
Subdirs
tcb-offsets.h
thread_db.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
threads.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
timer_routines.h Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
tst-mqueue8x.c
unwind-forcedunwind.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00