From: GNU Libc Maintainers Date: Wed, 30 Apr 2025 01:01:35 +0000 (+0800) Subject: local-tls-ie-align X-Git-Tag: archive/raspbian/2.31-13+rpi1+deb11u12^2~89 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=763832a24d19294b937c6fd2dddb613bfe9b1269;p=glibc.git local-tls-ie-align The elf/tst-tls-ie* tests try to load modules with 8-byte-aligned TLS data that will get allocated in the static TLS area, so we need at least 8-byte alignment. 8-byte alignment requirement is not that uncommon on i386 anyway. And upstream happens to have 32-byte alignment from 0c76fc3c2b34 ('Linux: Perform rseq registration at C startup and thread creation') which just rounds up max_align to 32 anyway. Gbp-Pq: Topic hurd-i386 Gbp-Pq: Name local-tls-ie-align.diff --- diff --git a/sysdeps/mach/hurd/tls.h b/sysdeps/mach/hurd/tls.h index a6a358678..3b909444e 100644 --- a/sysdeps/mach/hurd/tls.h +++ b/sysdeps/mach/hurd/tls.h @@ -25,6 +25,7 @@ # include # include # include +# include # include # include # include @@ -34,7 +35,7 @@ # define TLS_INIT_TCB_SIZE sizeof (tcbhead_t) /* Alignment requirements for the initial TCB. */ -# define TLS_INIT_TCB_ALIGN __alignof__ (tcbhead_t) +# define TLS_INIT_TCB_ALIGN MAX(__alignof__ (tcbhead_t), 8) /* This is the size of the TCB. */ # define TLS_TCB_SIZE TLS_INIT_TCB_SIZE /* XXX */