]> git.ipfire.org Git - thirdparty/glibc.git/commit
arm: Guard ucontext _rtld_global_ro access by SHARED, not PIC macro
authorFlorian Weimer <fweimer@redhat.com>
Fri, 17 Dec 2021 10:48:41 +0000 (11:48 +0100)
committerFlorian Weimer <fweimer@redhat.com>
Fri, 17 Dec 2021 10:48:44 +0000 (11:48 +0100)
commitce1e5b11229f19820b86f8b19d651f16009552b0
treec5770db278103caa19b61345543d2b3b7c6a4ffb
parent72e4a717bd9281a9ddfe8e43106cc6a2c1a7e7d8
arm: Guard ucontext _rtld_global_ro access by SHARED, not PIC macro

Due to PIE-by-default, PIC is now defined in more cases.  libc.a
does not have _rtld_global_ro, and statically linking setcontext
fails.  SHARED is the right condition to use, so that libc.a
references _dl_hwcap instead of _rtld_global_ro.

For static PIE support, the !SHARED case would still have to be made
PIC.  This patch does not achieve that.

Fixes commit 23645707f12f2dd9d80b51effb2d9618a7b65565
("Replace --enable-static-pie with --disable-default-pie").

Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
Reviewed-by: Szabolcs Nagy <szabolcs.nagy@arm.com>
sysdeps/unix/sysv/linux/arm/getcontext.S
sysdeps/unix/sysv/linux/arm/setcontext.S