mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-08 14:20:07 +00:00
Don't add stack_chk_fail_local.o to libc.a [BZ #21740]
commit 524a8ef2ad
Author: Nick Alcock <nick.alcock@oracle.com>
Date: Mon Dec 26 10:08:57 2016 +0100
PLT avoidance for __stack_chk_fail [BZ #7065]
Add a hidden __stack_chk_fail_local alias to libc.so,
and make sure that on targets which use __stack_chk_fail,
this does not introduce a local PLT reference into libc.so.
which unconditionally added
strong_alias (__stack_chk_fail, __stack_chk_fail_local)
defines __stack_chk_fail_local as an alias of __stack_chk_fail in libc.a.
There is no need to add stack_chk_fail_local.o to libc.a. We only need
to add stack_chk_fail_local.oS to libc_nonshared.a.
Tested on x86-64:
[hjl@gnu-skl-1 build-x86_64-linux]$ nm libc.a | grep __stack_chk_fail
0000000000000000 T __stack_chk_fail
0000000000000000 T __stack_chk_fail_local
[hjl@gnu-skl-1 build-x86_64-linux]$ nm libc_nonshared.a | grep __stack_chk_fail_local
0000000000000000 T __stack_chk_fail_local
[hjl@gnu-skl-1 build-x86_64-linux]$
[BZ #21740]
* debug/Makefile (elide-routines.o): New.
This commit is contained in:
parent
82e0660050
commit
2b4fca86d7
@ -1,3 +1,8 @@
|
|||||||
|
2017-07-19 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
|
[BZ #21740]
|
||||||
|
* debug/Makefile (elide-routines.o): New.
|
||||||
|
|
||||||
2017-07-19 Szabolcs Nagy <szabolcs.nagy@arm.com>
|
2017-07-19 Szabolcs Nagy <szabolcs.nagy@arm.com>
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c:
|
* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c:
|
||||||
|
@ -53,6 +53,10 @@ routines = backtrace backtracesyms backtracesymsfd noophooks \
|
|||||||
$(static-only-routines)
|
$(static-only-routines)
|
||||||
static-only-routines := warning-nop stack_chk_fail_local
|
static-only-routines := warning-nop stack_chk_fail_local
|
||||||
|
|
||||||
|
# Don't add stack_chk_fail_local.o to libc.a since __stack_chk_fail_local
|
||||||
|
# is an alias of __stack_chk_fail in stack_chk_fail.o.
|
||||||
|
elide-routines.o := stack_chk_fail_local
|
||||||
|
|
||||||
# Building the stack-protector failure routines with stack protection
|
# Building the stack-protector failure routines with stack protection
|
||||||
# makes no sense.
|
# makes no sense.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user