summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2019-09-18 13:22:24 +0000
committerAndreas K. Hüttel <dilfridge@gentoo.org>2019-11-25 22:59:51 +0100
commit96e55069ad45998e63220e03388e71856f4bc448 (patch)
tree315db8f183e2368a9578511972610bbbd316c5b7
parentalpha: force old OSF1 syscalls for getegid, geteuid and getppid [BZ #24986] (diff)
downloadglibc-96e55069ad45998e63220e03388e71856f4bc448.tar.gz
glibc-96e55069ad45998e63220e03388e71856f4bc448.tar.bz2
glibc-96e55069ad45998e63220e03388e71856f4bc448.zip
Fix RISC-V vfork build with Linux 5.3 kernel headers (ChangeLog addition)
Building glibc for RISC-V with Linux 5.3 kernel headers fails because <linux/sched.h>, included in vfork.S for CLONE_* constants, contains a structure definition not safe for inclusion in assembly code. All other architectures already avoid use of that header in vfork.S, either defining the CLONE_* constants locally or embedding the required values directly in the relevant instruction, where they implement vfork using the clone syscall (see the implementations for aarch64, ia64, mips and nios2). This patch makes the RISC-V version define the constants locally like the other architectures. Tested build for all three RISC-V configurations in build-many-glibcs.py with Linux 5.3 headers. * sysdeps/unix/sysv/linux/riscv/vfork.S: Do not include <linux/sched.h>. (CLONE_VM): New macro. (CLONE_VFORK): Likewise. (cherry picked from commit 8cacbcf4a984ccac24efedb795d9c8a7f149d17b) (cherry picked from commit a6aaabd036d735a1b412f441bf6c706832655598)
-rw-r--r--ChangeLog7
1 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 3ea022b738..29c864868a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2019-09-20 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/riscv/vfork.S: Do not include
+ <linux/sched.h>.
+ (CLONE_VM): New macro.
+ (CLONE_VFORK): Likewise.
+
2019-09-14 Aurelien Jarno <aurelien@aurel32.net>
[BZ #24986]