diff options
author | Nick Alcock <nick.alcock@oracle.com> | 2016-12-26 10:09:06 +0100 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2016-12-26 10:11:06 +0100 |
commit | 2e6c45c59bcd40f1ae8466cbd32f4d263ff45619 (patch) | |
tree | fc558d3f90670cf9028bfd33839dbe75c2d674bb /ChangeLog | |
parent | 1ad4ba28e9335c288687d1757bce3221c522f576 (diff) | |
download | glibc-2e6c45c59bcd40f1ae8466cbd32f4d263ff45619.zip glibc-2e6c45c59bcd40f1ae8466cbd32f4d263ff45619.tar.gz glibc-2e6c45c59bcd40f1ae8466cbd32f4d263ff45619.tar.bz2 |
Do not stack-protect sigreturn stubs [BZ #7065]
These are called from the kernel with the stack at a carefully-
chosen location so that the stack frame can be restored: they must not
move the stack pointer lest garbage be restored into the registers.
We explicitly inhibit protection for SPARC and for signal/sigreturn.c:
other arches either define their sigreturn stubs in .S files, or (i386,
x86_64, mips) use macros expanding to top-level asm blocks and explicit
labels in the text section to mock up a "function" without telling the
compiler that one is there at all.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -1,6 +1,15 @@ 2016-12-26 Nick Alcock <nick.alcock@oracle.com> [BZ #7065] + * signal/Makefile (CFLAGS-sigreturn.c): Use $(no-stack-protector). + * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c: + (__rt_sigreturn_stub): Use inhibit_stack_protector. + * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c + (__rt_sigreturn_stub, __sigreturn_stub): Likewise. + +2016-12-26 Nick Alcock <nick.alcock@oracle.com> + + [BZ #7065] * login/Makefile (pt_chown-cflags): Remove. * nscd/Makefile (CFLAGS-nscd): Likewise. * resolv/Makefile (CFLAGS-libresolv): Likewise. |