about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2020-12-21 10:24:34 +0530
committerSiddhesh Poyarekar <siddhesh@sourceware.org>2020-12-21 10:24:34 +0530
commit6eb7e1da0e805e2893a0b70a5813641529d8c7e2 (patch)
tree3e41bd0527d16d03a0b88c09a7a68afb360bc90c /sysdeps
parent756608dbe89f6a829c8f0d2479e09eb026e48d8b (diff)
downloadglibc-6eb7e1da0e805e2893a0b70a5813641529d8c7e2.tar.gz
glibc-6eb7e1da0e805e2893a0b70a5813641529d8c7e2.tar.xz
glibc-6eb7e1da0e805e2893a0b70a5813641529d8c7e2.zip
m68k: fix clobbering a5 in setjmp() [BZ #24202]
setjmp() uses C code to store current registers into jmp_buf
environment. -fstack-protector-all places canary into setjmp()
prologue and clobbers 'a5' before it gets saved.

The change inhibits stack canary injection to avoid clobber.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/m68k/setjmp.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sysdeps/m68k/setjmp.c b/sysdeps/m68k/setjmp.c
index 0b86f2d3ee..d8cc2515d2 100644
--- a/sysdeps/m68k/setjmp.c
+++ b/sysdeps/m68k/setjmp.c
@@ -19,6 +19,7 @@
 
 /* Save the current program position in ENV and return 0.  */
 int
+inhibit_stack_protector
 #if defined BSD_SETJMP
 # undef setjmp
 # define savemask 1