aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2017-08-28 11:31:23 +0200
committerFlorian Weimer <fweimer@redhat.com>2017-08-28 11:58:52 +0200
commit2dba5ce7b8115d6a2789bf279892263621088e74 (patch)
tree14d4eea70f46985b3fdcfd0d20d5263b128402e2 /ChangeLog
parent5f3b183d198b39ca993a41aadb02bddd9fde078d (diff)
downloadglibc-2dba5ce7b8115d6a2789bf279892263621088e74.tar
glibc-2dba5ce7b8115d6a2789bf279892263621088e74.tar.gz
glibc-2dba5ce7b8115d6a2789bf279892263621088e74.tar.bz2
glibc-2dba5ce7b8115d6a2789bf279892263621088e74.zip
<bits/syscall.h>: Use an arch-independent system call list on Linux
This commit changes the way the list of SYS_* system call macros is created on Linux. glibc now contains a list of all known system calls, and the generated <bits/syscall.h> file defines the SYS_ macro only if the correspnding __NR_ macro is defined by the kernel headers. As a result, glibc does not have to be rebuilt to pick up system calls if the glibc sources already know about them. This means that glibc can be built with older kernel headers, and if the installed kernel headers are upgraded afterwards, additional SYS_ macros become available as long as glibc has a record for those system calls.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog22
1 files changed, 22 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 6dbf10cd8f..5677c5eb46 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,25 @@
+2017-08-28 Florian Weimer <fweimer@redhat.com>
+
+ Store supported list of SYS_* system calls in the source tree.
+ * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
+ (bits/syscall.h): Generate from list file.
+ [$(subdir) = misc] (before-compile): Add bits/syscall.h.
+ [$(subdir) = misc] (tests): Add tst-syscall-list.
+ [$(subdir) = misc] (tests-special): Add tst-syscall-list.out
+ [$(subdir) = misc] (tst-syscall-list-macros.list)
+ [$(subdir) = misc] (tst-syscall-list-nr.list)
+ (tst-syscall-list-sys.list): Helper targets for new
+ tst-syscall-list test.
+ [$(subdir) = misc] (tst-syscall-list.out): Run test script
+ tst-syscall-list.sh.
+ [$(subdir) = misc] (bits/syscall%h, bits/syscall%d): Remove
+ target. Do not include bits/syscall.d.
+ [$(subdir) = misc] (generated): Do not update.
+ * sysdeps/unix/sysv/linux/syscall-names.list: New file.
+ * sysdeps/unix/sysv/linux/gen-syscall-h.awk: Likewise.
+ * sysdeps/unix/sysv/linux/filter-nr-syscalls.awk: Likewise.
+ * sysdeps/unix/sysv/linux/tst-syscall-list.sh: Likewise.
+
2017-08-27 Paul Pluzhnikov <ppluzhnikov@google.com>
* stdlib/Makefile (tst-atexit, tst-at_quick_exit): New tests.