linux/tools/testing/selftests/rseq
Mathieu Desnoyers e546cd48cc selftests/rseq: Introduce rseq_get_abi() helper
This is done in preparation for the selftest uplift to become compatible
with glibc-2.35.

glibc-2.35 exposes the rseq per-thread data in the TCB, accessible
at an offset from the thread pointer, rather than through an actual
Thread-Local Storage (TLS) variable, as the kernel selftests initially
expected.

Introduce a rseq_get_abi() helper, initially using the __rseq_abi
TLS variable, in preparation for changing this userspace ABI for one
which is compatible with glibc-2.35.

Note that the __rseq_abi TLS and glibc-2.35's ABI for per-thread data
cannot actively coexist in a process, because the kernel supports only
a single rseq registration per thread.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20220124171253.22072-6-mathieu.desnoyers@efficios.com
2022-02-02 13:11:35 +01:00
..
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
basic_percpu_ops_test.c selftests/rseq: remove ARRAY_SIZE define from individual tests 2021-12-10 17:51:03 -07:00
basic_test.c
Makefile selftests/rseq: Fix out-of-tree compilation 2020-02-20 08:57:12 -07:00
param_test.c selftests/rseq: Remove useless assignment to cpu variable 2022-02-02 13:11:34 +01:00
rseq-abi.h selftests/rseq: introduce own copy of rseq uapi header 2022-02-02 13:11:33 +01:00
rseq-arm64.h selftests/rseq: Introduce rseq_get_abi() helper 2022-02-02 13:11:35 +01:00
rseq-arm.h selftests/rseq: Introduce rseq_get_abi() helper 2022-02-02 13:11:35 +01:00
rseq-mips.h selftests/rseq: Introduce rseq_get_abi() helper 2022-02-02 13:11:35 +01:00
rseq-ppc.h selftests/rseq: Introduce rseq_get_abi() helper 2022-02-02 13:11:35 +01:00
rseq-s390.h selftests/rseq: Introduce rseq_get_abi() helper 2022-02-02 13:11:35 +01:00
rseq-skip.h
rseq-x86.h selftests/rseq: Introduce rseq_get_abi() helper 2022-02-02 13:11:35 +01:00
rseq.c selftests/rseq: Remove volatile from __rseq_abi 2022-02-02 13:11:34 +01:00
rseq.h selftests/rseq: Introduce rseq_get_abi() helper 2022-02-02 13:11:35 +01:00
run_param_test.sh rseq/selftests: Test MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ 2020-09-25 14:23:27 +02:00
settings rseq/selftests: Turn off timeout setting 2019-12-23 10:52:41 -07:00