glibc/sysdeps/unix/sysv/linux/riscv
Mike Crowe 9d20e22e46 nptl: Add POSIX-proposed pthread_mutex_clocklock
Add POSIX-proposed pthread_mutex_clocklock function that works like
pthread_mutex_timedlock but takes a clockid parameter to measure the
abstime parameter against.

	* sysdeps/nptl/pthread.h: Add pthread_mutex_clocklock.
	* nptl/DESIGN-systemtap-probes.txt: Likewise.
	* nptl/pthread_mutex_timedlock.c
	(__pthread_mutex_clocklock_common): Rename from
	__pthread_mutex_timedlock and add clockid parameter. Pass this
	parameter to lll_clocklock and lll_clocklock_elision in place of
	CLOCK_REALTIME. (__pthread_mutex_clocklock): New function to add
	LIBC_PROBE and validate clockid parameter before calling
	__pthread_mutex_clocklock_common. (__pthread_mutex_timedlock): New
	implementation to add LIBC_PROBE and calls
	__pthread_mutex_clocklock_common passing CLOCK_REALTIME as the
	clockid.
	* nptl/Makefile: Add tst-mutex11.c.
	* nptl/tst-abstime.c (th): Add tests for pthread_mutex_clocklock.
	* nptl/tst-mutex11.c: New tests for passing invalid and unsupported
	clockid parameters to pthread_mutex_clocklock.
	* nptl/tst-mutex5.c (do_test_clock): Rename from do_test and take
	clockid parameter to indicate which clock to be used. Call
	pthread_mutex_timedlock or pthread_mutex_clocklock as appropriate.
	(do_test): Call do_test_clock to separately test
	pthread_mutex_timedlock, pthread_mutex_clocklock(CLOCK_REALTIME)
	and pthread_mutex_clocklock(CLOCK_MONOTONIC).
	* nptl/tst-mutex9.c: Likewise.
	* nptl/Versions (GLIBC_2.30): Add pthread_mutex_clocklock.
	* sysdeps/unix/sysv/linux/aarch64/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/alpha/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/arm/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/csky/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/hppa/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/i386/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/ia64/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/m68k/coldfire/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/m68k/m680x0/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/microblaze/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/mips/mips32/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/nios2/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/riscv/rv64/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/sh/libpthread.abilist (GLIBC_2.30):
	Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/x86_64/64/libpthread.abilist
	(GLIBC_2.30): Likewise.
	* sysdeps/unix/sysv/linux/x86_64/x32/libpthread.abilist
	(GLIBC_2.30): Likewise.

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2019-07-12 13:36:25 +00:00
..
bits Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
rv64 nptl: Add POSIX-proposed pthread_mutex_clocklock 2019-07-12 13:36:25 +00:00
sys Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
atomic-machine.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
clone.S RISC-V: Fix elfutils testsuite unwind failures. 2019-02-13 14:25:00 -08:00
configure RISC-V: Fix `test' operand error with soft-float ABI being configured 2019-03-30 01:11:31 +00:00
configure.ac RISC-V: Fix `test' operand error with soft-float ABI being configured 2019-03-30 01:11:31 +00:00
dl-cache.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-static.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
flush-icache.c riscv: Do not use __has_include__ 2019-06-06 11:24:32 +02:00
getcontext.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Implies RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
init-first.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ipc_priv.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
kernel-features.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ldconfig.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ldd-rewrite.sed RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
libc-vdso.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
localplt.data RISC-V: Add ABI Lists 2018-01-29 10:37:28 -08:00
makecontext.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Makefile RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
profil-counter.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
readelflib.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
register-dump.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
setcontext.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
shlib-versions RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
sigcontextinfo.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
swapcontext.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
syscall.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
sysdep.h RISC-V: Linux Syscall Interface 2018-01-29 10:27:52 -08:00
sysdep.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ucontext_i.sym RISC-V: Linux ABI 2018-01-29 10:37:27 -08:00
ucontext-macros.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Versions RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
vfork.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00