diff options
author | Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | 2022-01-24 12:12:44 -0500 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2022-02-02 13:11:35 +0100 |
commit | 886ddfba933f5ce9d76c278165d834d114ba4ffc (patch) | |
tree | 4394df10c80209533aa627deacd27d2e23433750 /tools/testing/selftests/rseq/rseq-thread-pointer.h | |
parent | e546cd48ccc456074ddb8920732aef4af65d7ca7 (diff) | |
download | linux-886ddfba933f5ce9d76c278165d834d114ba4ffc.tar.bz2 |
selftests/rseq: Introduce thread pointer getters
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.
The toolchains do not implement accessing the thread pointer on all
architectures. Provide thread pointer getters for ppc and x86 which
lack (or lacked until recently) toolchain support.
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-7-mathieu.desnoyers@efficios.com
Diffstat (limited to 'tools/testing/selftests/rseq/rseq-thread-pointer.h')
-rw-r--r-- | tools/testing/selftests/rseq/rseq-thread-pointer.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tools/testing/selftests/rseq/rseq-thread-pointer.h b/tools/testing/selftests/rseq/rseq-thread-pointer.h new file mode 100644 index 000000000000..977c25d758b2 --- /dev/null +++ b/tools/testing/selftests/rseq/rseq-thread-pointer.h @@ -0,0 +1,19 @@ +/* SPDX-License-Identifier: LGPL-2.1-only OR MIT */ +/* + * rseq-thread-pointer.h + * + * (C) Copyright 2021 - Mathieu Desnoyers <mathieu.desnoyers@efficios.com> + */ + +#ifndef _RSEQ_THREAD_POINTER +#define _RSEQ_THREAD_POINTER + +#if defined(__x86_64__) || defined(__i386__) +#include "rseq-x86-thread-pointer.h" +#elif defined(__PPC__) +#include "rseq-ppc-thread-pointer.h" +#else +#include "rseq-generic-thread-pointer.h" +#endif + +#endif |