diff options
author | Dragan Mladjenovic <dmladjenovic@wavecomp.com> | 2020-01-22 17:14:23 +0000 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2020-01-23 19:58:55 +0530 |
commit | ba44e5b50873ceea25884af280612e100e151746 (patch) | |
tree | b7244cb12cdfbf473ea9ccf6150030e08db01e22 | |
parent | d93769405996dfc11d216ddbe415946617b5a494 (diff) | |
download | glibc-ba44e5b50873ceea25884af280612e100e151746.zip glibc-ba44e5b50873ceea25884af280612e100e151746.tar.gz glibc-ba44e5b50873ceea25884af280612e100e151746.tar.bz2 |
Add NEWS entry about the change in handling of PT_GNU_STACK on MIPS
The change was introduced in:
commit 33bc9efd91de1b14354291fc8ebd5bce96379f12
Author: Dragan Mladjenovic <dmladjenovic@wavecomp.com>
Date: Fri Aug 23 16:38:04 2019 +0000
mips: Force RWX stack for hard-float builds that can run on pre-4.8 kernels
and probably requires a small explanation.
Co-authored-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
-rw-r--r-- | NEWS | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -112,6 +112,18 @@ Deprecated and removed features, and other changes affecting compatibility: captured in a dlerror message. In general, this is unsafe because resetting the stack in an arbitrary function call is not possible. +* For MIPS hard-float ABIs, the GNU C Library will be configured to need an + executable stack unless explicitly configured at build time to require + minimum kernel version 4.8 or newer. This is because executing + floating-point branches on a non-executable stack on Linux kernels prior to + 4.8 can lead to application crashes for some MIPS configurations. While + currently PT_GNU_STACK is not widely used on MIPS, future releases of GCC are + expected to enable non-executable stack by default with PT_GNU_STACK by + default and is thus likely to trigger a crash on older kernels. + + The GNU C Library can be built with --enable-kernel=4.8.0 in order to keep a + non-executable stack while dropping support for older kernels. + Changes to build and runtime requirements: * It is no longer necessary to have recent Linux kernel headers to build |