aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Jeanson <mjeanson@efficios.com>2024-08-01 14:29:10 -0400
committerMichael Jeanson <mjeanson@efficios.com>2025-01-10 20:20:39 +0000
commit540c8172660b93909ca9511e9742cd4dad4644a1 (patch)
treef6d7f71a81e58adffc55ff81ca1923c26b840a0b
parent93d0bfbe8ffa9c3dcbfc8e953216542f500dac07 (diff)
downloadglibc-540c8172660b93909ca9511e9742cd4dad4644a1.zip
glibc-540c8172660b93909ca9511e9742cd4dad4644a1.tar.gz
glibc-540c8172660b93909ca9511e9742cd4dad4644a1.tar.bz2
nptl: Remove the rseq area from 'struct pthread'
The rseq extensible ABI implementation moved the rseq area to the 'extra TLS' block, remove the unused 'rseq_area' member of 'struct pthread'. Signed-off-by: Michael Jeanson <mjeanson@efficios.com> Reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Reviewed-by: Florian Weimer <fweimer@redhat.com>
-rw-r--r--nptl/descr.h22
1 files changed, 3 insertions, 19 deletions
diff --git a/nptl/descr.h b/nptl/descr.h
index d0d3092..c60ca13 100644
--- a/nptl/descr.h
+++ b/nptl/descr.h
@@ -407,27 +407,11 @@ struct pthread
/* getrandom vDSO per-thread opaque state. */
void *getrandom_buf;
- /* rseq area registered with the kernel. Use a custom definition
- here to isolate from kernel struct rseq changes. The
- implementation of sched_getcpu needs acccess to the cpu_id field;
- the other fields are unused and not included here. */
- union
- {
- struct
- {
- uint32_t cpu_id_start;
- uint32_t cpu_id;
- uint64_t rseq_cs;
- uint32_t flags;
- };
- char pad[32]; /* Original rseq area size. */
- } rseq_area __attribute__ ((aligned (32)));
-
/* Amount of end padding, if any, in this structure.
- This definition relies on rseq_area being last. */
+ This definition relies on getrandom_buf being last. */
#define PTHREAD_STRUCT_END_PADDING \
- (sizeof (struct pthread) - offsetof (struct pthread, rseq_area) \
- + sizeof ((struct pthread) {}.rseq_area))
+ (sizeof (struct pthread) - offsetof (struct pthread, getrandom_buf) \
+ + sizeof ((struct pthread) {}.getrandom_buf))
} __attribute ((aligned (TCB_ALIGNMENT)));
static inline bool