glibc/nptl
Adhemerval Zanella Netto 6f4e0fcfa2 stdlib: Add arc4random, arc4random_buf, and arc4random_uniform (BZ #4417)
The implementation is based on scalar Chacha20 with per-thread cache.
It uses getrandom or /dev/urandom as fallback to get the initial entropy,
and reseeds the internal state on every 16MB of consumed buffer.

To improve performance and lower memory consumption the per-thread cache
is allocated lazily on first arc4random functions call, and if the
memory allocation fails getentropy or /dev/urandom is used as fallback.
The cache is also cleared on thread exit iff it was initialized (so if
arc4random is not called it is not touched).

Although it is lock-free, arc4random is still not async-signal-safe
(the per thread state is not updated atomically).

The ChaCha20 implementation is based on RFC8439 [1], omitting the final
XOR of the keystream with the plaintext because the plaintext is a
stream of zeros.  This strategy is similar to what OpenBSD arc4random
does.

The arc4random_uniform is based on previous work by Florian Weimer,
where the algorithm is based on Jérémie Lumbroso paper Optimal Discrete
Uniform Generation from Coin Flips, and Applications (2013) [2], who
credits Donald E. Knuth and Andrew C. Yao, The complexity of nonuniform
random number generation (1976), for solving the general case.

The main advantage of this method is the that the unit of randomness is not
the uniform random variable (uint32_t), but a random bit.  It optimizes the
internal buffer sampling by initially consuming a 32-bit random variable
and then sampling byte per byte.  Depending of the upper bound requested,
it might lead to better CPU utilization.

Checked on x86_64-linux-gnu, aarch64-linux, and powerpc64le-linux-gnu.

Co-authored-by: Florian Weimer <fweimer@redhat.com>
Reviewed-by: Yann Droneaud <ydroneaud@opteya.com>

[1] https://datatracker.ietf.org/doc/html/rfc8439
[2] https://arxiv.org/pdf/1304.1916.pdf
2022-07-22 11:58:27 -03:00
..
alloca_cutoff.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
allocatestack.c stdlib: Add arc4random, arc4random_buf, and arc4random_uniform (BZ #4417) 2022-07-22 11:58:27 -03:00
cancellation.c nptl: Handle spurious EINTR when thread cancellation is disabled (BZ#29029) 2022-04-14 12:48:31 -03:00
cleanup_compat.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
cleanup_defer_compat.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
cleanup_defer.c nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore 2022-07-13 10:44:13 -03:00
cleanup_routine.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
cleanup.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
cond-perf.c Use glibc_likely instead __builtin_expect. 2014-02-10 15:07:12 +01:00
default-sched.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
descr.h Refactor internal-signals.h 2022-06-30 14:56:21 -03:00
DESIGN-systemtap-probes.txt nptl: Add POSIX-proposed pthread_mutex_clocklock 2019-07-12 13:36:25 +00:00
elision-conf.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
elision-conf.h Add the low level infrastructure for pthreads lock elision with TSX 2013-07-02 08:46:54 -07:00
elision-lock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
elision-timed.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
elision-trylock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
elision-unlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
errno-loc.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 2005-12-14 08:43:25 +00:00
events.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
futex-internal.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
libc-cleanup.c nptl: Fix __libc_cleanup_pop_restore asynchronous restore (BZ#29214) 2022-06-08 09:23:02 -03:00
libpthread-compat.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
lowlevellock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Makefile Replace __libc_multiple_threads with __libc_single_threaded 2022-07-05 10:14:47 -03:00
nptl_deallocate_tsd.c Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
nptl_free_tcb.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
nptl_lock_constants.pysym New pthread rwlock that is more scalable. 2017-01-10 11:50:17 +01:00
nptl_nthreads.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
nptl_setxid.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
nptl-printers.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
nptl-stack.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
nptl-stack.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
nptlfreeres.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
old_pthread_cond_broadcast.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
old_pthread_cond_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
old_pthread_cond_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
old_pthread_cond_signal.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
old_pthread_cond_timedwait.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
old_pthread_cond_wait.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
perf.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_copy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_extension.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getaffinity.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getdetachstate.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getguardsize.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getinheritsched.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getschedparam.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getschedpolicy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getscope.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getsigmask.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getstack.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getstackaddr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_getstacksize.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setaffinity.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setdetachstate.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setguardsize.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setinheritsched.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setschedparam.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setschedpolicy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setscope.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setsigmask_internal.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setsigmask.c Refactor internal-signals.h 2022-06-30 14:56:21 -03:00
pthread_attr_setstack.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setstackaddr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_attr_setstacksize.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_barrier_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_barrier_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_barrier_wait.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_barrierattr_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_barrierattr_getpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_barrierattr_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_barrierattr_setpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_cancel.c Replace __libc_multiple_threads with __libc_single_threaded 2022-07-05 10:14:47 -03:00
pthread_cleanup_upto.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_clockjoin.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_cond_broadcast.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_cond_common.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_cond_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_cond_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_cond_signal.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_cond_wait.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_condattr_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_condattr_getclock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_condattr_getpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_condattr_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_condattr_setclock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_condattr_setpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_create.c Refactor internal-signals.h 2022-06-30 14:56:21 -03:00
pthread_detach.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_equal.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_exit.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getaffinity.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getattr_default_np.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getattr_np.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getconcurrency.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getcpuclockid.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getname.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getschedparam.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_getspecific.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_join_common.c nptl: Handle spurious EINTR when thread cancellation is disabled (BZ#29029) 2022-04-14 12:48:31 -03:00
pthread_join.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_key_create.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_key_delete.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_keys.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_kill_other_threads.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_kill.c Refactor internal-signals.h 2022-06-30 14:56:21 -03:00
pthread_mutex_cond_lock.c nptl: Move core mutex functions into libc 2021-04-21 19:49:51 +02:00
pthread_mutex_conf.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_consistent.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_getprioceiling.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_lock.c nptl: Add backoff mechanism to spinlock loop 2022-05-09 14:38:40 -07:00
pthread_mutex_setprioceiling.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_timedlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_trylock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutex_unlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_getprioceiling.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_getprotocol.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_getpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_getrobust.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_gettype.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_setprioceiling.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_setprotocol.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_setpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_setrobust.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_mutexattr_settype.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_once.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_clockrdlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_clockwrlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_common.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_rdlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_timedrdlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_timedwrlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_tryrdlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_trywrlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_unlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlock_wrlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlockattr_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlockattr_getkind_np.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlockattr_getpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlockattr_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlockattr_setkind_np.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_rwlockattr_setpshared.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_self.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_setaffinity.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_setattr_default_np.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_setcancelstate.c nptl: Handle spurious EINTR when thread cancellation is disabled (BZ#29029) 2022-04-14 12:48:31 -03:00
pthread_setcanceltype.c nptl: Handle spurious EINTR when thread cancellation is disabled (BZ#29029) 2022-04-14 12:48:31 -03:00
pthread_setconcurrency.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_setname.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_setschedparam.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_setschedprio.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_setspecific.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_sigmask.c Refactor internal-signals.h 2022-06-30 14:56:21 -03:00
pthread_sigqueue.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_spin_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_spin_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_spin_lock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_spin_trylock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_spin_unlock.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_testcancel.c nptl: Handle spurious EINTR when thread cancellation is disabled (BZ#29029) 2022-04-14 12:48:31 -03:00
pthread_timedjoin.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_tryjoin.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread_yield.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
pthread-pi-defines.sym Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
sem_clockwait.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sem_destroy.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sem_getvalue.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sem_init.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sem_post.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sem_timedwait.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sem_wait.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
sem_waitcommon.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
semaphoreP.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
shlib-versions Remove configuration name patterns from shlib-versions. 2014-09-12 12:28:47 +00:00
test-cond-printers.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-cond-printers.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-condattr-printers.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-condattr-printers.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-mutex-printers.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-mutex-printers.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-mutexattr-printers.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-mutexattr-printers.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-rwlock-printers.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-rwlock-printers.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-rwlockattr-printers.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
test-rwlockattr-printers.py Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
thrd_current.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
thrd_yield.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
TODO * version.h (VERSION): Define to 6. 2007-05-15 06:49:29 +00:00
TODO-kernel
TODO-testing
tpp.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-attr2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-attr3.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-audit-threads-mod1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-audit-threads-mod2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-audit-threads.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-audit-threads.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-barrier5.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cancel4_1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cancel4_2-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-cancel4_2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cancel7.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cancel17.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cancel24-static.cc Add test cases for BZ #14557 2012-10-05 10:23:58 -07:00
tst-cancel24.cc * include/stdlib.h: Make even more C++ compliant. 2006-01-04 09:26:31 +00:00
tst-cancelx7.c
tst-cancelx17.c
tst-cleanup4.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cleanup4aux.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cleanupx4.c
tst-cleanupx4aux.c Compile tst-cleanupx4 test with -fexceptions 2016-06-29 20:24:44 -07:00
tst-clock2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-compat-forwarder-mod.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-compat-forwarder.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-cond22.c nptl: Extract <bits/atomic_wide_counter.h> from pthread_cond_common.c 2021-11-17 12:20:13 +01:00
tst-cond26.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-context1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-default-attr.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-dlsym1.c Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
tst-eintr1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-exec4.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-exec5.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-execstack-mod.c
tst-execstack.c
tst-initializers1-c11.c Add -std=gnu11 and -std=c11 NPTL initializers tests. 2015-10-27 21:48:34 +00:00
tst-initializers1-c89.c * tst-initializers1-c89.c: New file. 2006-01-09 23:05:00 +00:00
tst-initializers1-c99.c * tst-initializers1-c89.c: New file. 2006-01-09 23:05:00 +00:00
tst-initializers1-gnu11.c Add -std=gnu11 and -std=c11 NPTL initializers tests. 2015-10-27 21:48:34 +00:00
tst-initializers1-gnu89.c * tst-initializers1-c89.c: New file. 2006-01-09 23:05:00 +00:00
tst-initializers1-gnu99.c * tst-initializers1-c89.c: New file. 2006-01-09 23:05:00 +00:00
tst-initializers1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-minstack-cancel.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-minstack-exit.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-minstack-throw.cc Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-mutex5a.c Update. 2004-03-24 06:36:06 +00:00
tst-mutex7a.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutex8-static.c Add test cases for BZ #14557 2012-10-05 10:23:58 -07:00
tst-mutex8.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-mutexpi1.c Fix -Waddress warnings in nptl/tst-mutex1.c. 2014-12-02 22:33:57 +00:00
tst-mutexpi2.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi3.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi4.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi5.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi5a.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi6.c Remove warnings in NPTL tests 2011-10-24 21:43:33 -04:00
tst-mutexpi7.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi7a.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi8-static.c Add test cases for BZ #14557 2012-10-05 10:23:58 -07:00
tst-mutexpi8.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi9.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-mutexpi10.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-mutexpp1.c Fix -Waddress warnings in nptl/tst-mutex1.c. 2014-12-02 22:33:57 +00:00
tst-mutexpp5.c nptl: Fix PTHREAD_PRIO_PROTECT timed lock 2020-11-27 09:59:13 -03:00
tst-mutexpp6.c Get rid of warning comparision will always evaluate as true 2014-12-12 11:14:00 +01:00
tst-mutexpp9.c nptl: Fix PTHREAD_PRIO_PROTECT timed lock 2020-11-27 09:59:13 -03:00
tst-mutexpp10.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-oddstacklimit.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-once5.cc Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread_exit-nothreads-static.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread_exit-nothreads.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread-attr-affinity-fail.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread-attr-affinity.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread-attr-sigmask.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread-defaultattr-free.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread-gdb-attach-static.c nptl_db: Support different libpthread/ld.so load orders (bug 27744) 2021-04-21 11:50:43 +02:00
tst-pthread-gdb-attach.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-pthread-getattr.c Allow for unpriviledged nested containers 2022-04-04 14:17:08 -04:00
tst-pthread-timedlock-lockloop.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-robust-fork.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-robustpi1.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi2.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi3.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi4.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi5.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi6.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi7.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi8.c 2006-07-28 Ulrich Drepper <drepper@redhat.com> 2006-07-29 04:42:09 +00:00
tst-robustpi9.c Commit missing test case wrapper file. 2007-05-19 08:21:27 +00:00
tst-rwlock2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock2a.c (tests): Add tst-rwlock2a. 2008-05-31 08:56:14 +00:00
tst-rwlock2b.c New pthread rwlock that is more scalable. 2017-01-10 11:50:17 +01:00
tst-rwlock3.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock6.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock7.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock8.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock9.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock10.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock11.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock15.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock17.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock18.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock19.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock20.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-rwlock-pwn.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-sched1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-sem11-static.c Add test cases for BZ #14557 2012-10-05 10:23:58 -07:00
tst-sem11.c Fix semaphore destruction (bug 12674). 2015-01-21 00:46:16 -05:00
tst-sem12-static.c Add test cases for BZ #14557 2012-10-05 10:23:58 -07:00
tst-sem12.c Test of semaphores. 2007-05-26 01:23:04 +00:00
tst-sem13.c nptl: Add POSIX-proposed sem_clockwait 2019-07-12 13:36:23 +00:00
tst-sem17.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-setgetname.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-setgroups.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-setuid1-static.c Update. 2004-11-12 01:27:04 +00:00
tst-setuid1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-setuid2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-signal3.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-signal7.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-stack2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-stack3.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-stack4.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-stack4mod.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-stackguard1-static.c * Versions.def (ld): Add GLIBC_2.4. 2005-06-26 18:14:26 +00:00
tst-stackguard1.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-thread_local1.cc Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-thread-affinity-pthread2.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-thread-affinity-pthread.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-thread-affinity-sched.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-thread-exit-clobber.cc Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-thread-setspecific.c nptl: Use libc-diag.h with tst-thread-setspecific 2022-03-31 09:02:41 -03:00
tst-tls3-malloc.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-tls3.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-tls3mod.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-tls5.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-tls5.h Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-tls5mod.c
tst-tls5moda.c
tst-tls5modb.c
tst-tls5modc.c
tst-tls5modd.c
tst-tls5mode.c
tst-tls5modf.c
tst-tls6.sh Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-tpp.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-tsd3.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
tst-tsd4.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
unwind.c nptl: Fix cleanups for stack grows up [BZ# 28899] 2022-02-28 15:47:38 +00:00
unwindbuf.sym Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
vars.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Versions nptl: Use out-of-line wake function in __libc_lock_unlock slow path 2021-07-09 10:59:22 +02:00