mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-27 07:20:11 +00:00
4cf0d22305
The new tables are currently only used for consistency checks with the installed kernel headers and the architecture-independent system call names table. They are based on Linux 5.4. The goal is to use these architecture-specific tables to ensure that system call wrappers are available irrespective of the version of the installed kernel headers. The tables are formatted in the form of C header files so that they can be used directly in an #include directive, without external preprocessing. (External preprocessing of a plain table file would introduce cross-subdirectory dependency issues.) However, the intent is that they can still be treated as tables and can be processed by simple tools. The irregular system call names on 32-bit arm add a complication. The <fixup-asm-unistd.h> header is introduced to work around that, and the system calls are listed under regular names in the <arch-syscall.h> file. A make target, update-syscalls-list, is added to patch the glibc sources with data from the current kernel headers. Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
29 lines
1.3 KiB
C
29 lines
1.3 KiB
C
/* Regularize <asm/unistd.h> definitions. Default version.
|
|
Copyright (C) 2020 Free Software Foundation, Inc.
|
|
|
|
The GNU C Library is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU Lesser General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2.1 of the License, or (at your option) any later version.
|
|
|
|
The GNU C Library is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Lesser General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Lesser General Public
|
|
License along with the GNU C Library; if not, see
|
|
<http://www.gnu.org/licenses/>. */
|
|
|
|
/* Some architectures have irregular system call names in
|
|
<asm/unistd.h>. glibc assumes that system call numbers start with
|
|
__NR_* and lists the system calls under proper names in
|
|
<arch-syscall.h>.
|
|
|
|
During consistency tests, <fixup-asm-unistd.h> is included after
|
|
the kernel's <asm/unistd.h>, to introduce aliases as necessary to
|
|
match the glibc definitions in <arch-syscall.h>.
|
|
|
|
Most architectures do not need these fixups, so the default header
|
|
is empty. */
|