From: Paul Eggert Date: Wed, 19 Jul 2023 21:09:26 +0000 (-0700) Subject: make ‘struct pthread’ a complete type X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e24f8e6b35ee0242312cb0f1a9fb5a76403e724e;p=thirdparty%2Fglibc.git make ‘struct pthread’ a complete type * nptl/descr.h (struct pthread): Remove end_padding member, which made this type incomplete. (PTHREAD_STRUCT_END_PADDING): Stop using end_padding. Reviewed-by: Siddhesh Poyarekar (cherry picked from commit 3edc4ff2ceff4a59587ebecb94148d3bcfa1df62) --- diff --git a/nptl/descr.h b/nptl/descr.h index 5cacb286f35..70cf4b639a3 100644 --- a/nptl/descr.h +++ b/nptl/descr.h @@ -405,11 +405,11 @@ struct pthread /* rseq area registered with the kernel. */ struct rseq rseq_area; - /* This member must be last. */ - char end_padding[]; - + /* Amount of end padding, if any, in this structure. + This definition relies on rseq_area being last. */ #define PTHREAD_STRUCT_END_PADDING \ - (sizeof (struct pthread) - offsetof (struct pthread, end_padding)) + (sizeof (struct pthread) - offsetof (struct pthread, rseq_area) \ + + sizeof (struct rseq)) } __attribute ((aligned (TCB_ALIGNMENT))); static inline bool