glibc/sysdeps/unix/sysv/linux
Florian Weimer 6fcb0272f7 Linux: Enhance glibcsyscalls.py to support listing system calls
The script can now be called to query the definition status of
system call numbers across all architectures, like this:

$ python3 sysdeps/unix/sysv/linux/glibcsyscalls.py query-syscall sync_file_range sync_file_range2
sync_file_range:
  defined: aarch64 alpha csky hppa i386 ia64 m68k microblaze mips/mips32 mips/mips64/n32 mips/mips64/n64 nios2 riscv/rv64 s390/s390-32 s390/s390-64 sh sparc/sparc32 sparc/sparc64 x86_64/64 x86_64/x32
  undefined: arm powerpc/powerpc32 powerpc/powerpc64
sync_file_range2:
  defined: arm powerpc/powerpc32 powerpc/powerpc64
  undefined: aarch64 alpha csky hppa i386 ia64 m68k microblaze mips/mips32 mips/mips64/n32 mips/mips64/n64 nios2 riscv/rv64 s390/s390-32 s390/s390-64 sh sparc/sparc32 sparc/sparc64 x86_64/64 x86_64/x32

This command lists the headers containing the system call numbers:

$ python3 sysdeps/unix/sysv/linux/glibcsyscalls.py list-headers

The argument parser code is based on a suggestion from Adhemerval Zanella.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
2020-05-11 22:23:34 +02:00
..
aarch64 nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
alpha semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
arm nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
bits semaphore: consolidate arch headers into a generic one 2020-05-06 13:07:12 -07:00
csky nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
generic generic/typesizes.h: Add support for 32-bit arches with 64-bit types 2020-04-29 08:30:03 -07:00
hppa semctl: Remove the sem-pad.h file 2020-04-29 08:29:30 -07:00
i386 nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
ia64 linux: Remove assembly umount2 implementation 2020-05-08 17:19:13 -03:00
include linux: Remove assembly umount2 implementation 2020-05-08 17:19:13 -03:00
m68k nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
microblaze nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
mips semctl: Remove the sem-pad.h file 2020-04-29 08:29:30 -07:00
net
netash
netatalk
netax25
neteconet
netinet
netipx
netiucv
netpacket
netrom
netrose
nfs
nios2 nios2: delete sysdeps/unix/sysv/linux/nios2/kernel-features.h 2020-05-04 20:23:25 +08:00
powerpc POWER: Add context-synchronizing instructions to pkey_write [BZ #25954] 2020-05-11 16:11:47 +02:00
riscv nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
s390 nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
scsi
sh nptl: Move pthread_sigmask implementation to libc 2020-04-21 14:01:58 -03:00
sparc Rename __LONG_DOUBLE_USES_FLOAT128 to __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI 2020-04-30 08:52:08 -05:00
sys Linux: Remove <sys/sysctl.h> and the sysctl function 2020-04-15 17:17:32 +02:00
wordsize-64
x86 semctl: Remove the sem-pad.h file 2020-04-29 08:29:30 -07:00
x86_64 Add SYSCALL_ULONG_ARG_[12] to pass long to syscall [BZ #25810] 2020-04-29 05:35:34 -07:00
Implies
Makefile Add a C wrapper for prctl [BZ #25896] 2020-04-30 10:42:43 -07:00
Versions Linux: Remove <sys/sysctl.h> and the sysctl function 2020-04-15 17:17:32 +02:00
_G_config.h
_exit.c
a.out.h
accept.c
accept4.c
access.c
adjtime.c
adjtimex.c
aio_misc.h
aio_sigqueue.c
alphasort64.c
arch-fd_to_filename.h
arch-fork.h
bind.c
check_native.c
check_pf.c
clock.c
clock_getcpuclockid.c
clock_getres.c
clock_gettime.c
clock_nanosleep.c
clock_settime.c
close.c
close_nocancel.c
cmsg_nxthdr.c
configure
configure.ac
connect.c
copy_file_range.c
creat.c
creat64.c
createthread.c
default-sched.h
device-nrs.h
dl-brk.c
dl-execstack.c
dl-fxstatat64.c
dl-getcwd.c
dl-librecon.h
dl-openat64.c
dl-opendir.c
dl-origin.c
dl-osinfo.h
dl-sbrk.c
dl-sysdep.c
dl-sysdep.h
dl-vdso-setup.c
dl-vdso-setup.h
dl-vdso.h
dl-writev.h
epoll_pwait.c
epoll_wait.c
errqueue.h
eventfd_read.c
eventfd_write.c
exit-thread.h
faccessat.c
fallocate.c
fallocate64.c
fatal-prepare.h
fchmodat.c
fcntl.c
fcntl64.c
fcntl_nocancel.c
fdatasync.c
fexecve.c
filter-nr-syscalls.awk
fips-private.h
fixup-asm-unistd.h
fpathconf.c
fstatfs64.c
fstatvfs.c
fstatvfs64.c
fsync.c
ftruncate.c
ftruncate64.c
futimens.c
futimes.c
futimesat.c
fxstat.c
fxstat64.c
fxstatat.c
fxstatat64.c
gai_sigqueue.c
gen-syscall-h.awk
gentempfd.c
getclktck.c
getcpu.c
getcwd.c
getdents.c
getdents64.c
getdirentries.c
getdirentries64.c
getdtsz.c
getentropy.c
gethostid.c
getipv4sourcefilter.c
getitimer.c linux: Use long time_t __getitimer/__setitimer 2020-04-02 09:21:06 -07:00
getloadavg.c
getlogin.c
getlogin_r.c
getpagesize.c
getpeername.c
getpriority.c
getpt.c
getrandom.c
getrlimit.c
getrlimit64.c
getrusage.c linux: Use long time_t for wait4/getrusage 2020-04-02 09:21:06 -07:00
getsockname.c
getsockopt.c
getsourcefilter.c
getsourcefilter.h
getsysstats.c
gettimeofday.c
glibcsyscalls.py Linux: Enhance glibcsyscalls.py to support listing system calls 2020-05-11 22:23:34 +02:00
glob-lstat-compat.c
glob.c
glob64-lstat-compat.c
glob64.c
globfree.c
globfree64.c
grantpt.c
if_index.c
ifaddrs.c
ifreq.c
internal-signals.h
internal_statvfs.c
internal_statvfs.h
internal_statvfs64.c
ipc_ops.h
ipc_priv.h
kernel-features.h
kernel-posix-cpu-timers.h
kernel-posix-timers.h
kernel_sigaction.h
kernel_stat.h
kernel_termios.h
ldd-rewrite.sed
lddlibc4.c
ldsodefs.h
libc-vdso.h
libc_fatal.c
linux_fsinfo.h
listen.c
local-setxid.h
lseek.c
lseek64.c
lutimes.c
lxstat.c
lxstat64.c
malloc-sysdep.h
mlock2.c
mmap.c
mmap64.c
mmap_internal.h
mq_close.c
mq_getattr.c
mq_notify.c
mq_open.c
mq_receive.c
mq_send.c
mq_timedreceive.c y2038: linux: Provide __mq_timedreceive_time64 implementation 2020-04-06 23:05:11 +02:00
mq_timedsend.c y2038: linux: Provide __mq_timedsend_time64 implementation 2020-04-06 23:05:11 +02:00
mq_unlink.c
msgctl.c
msgget.c
msgrcv.c
msgsnd.c
msync.c
netlink_assert_response.c
netlinkaccess.h
nice.c
not-cancel.h
not-errno.h
nscd_setup_thread.c
ntp_gettime.c
ntp_gettimex.c
olddirent.h
oldglob.c
open.c
open64.c
open64_nocancel.c
open_by_handle_at.c
open_nocancel.c
openat.c
openat64.c
openat64_nocancel.c
openat_nocancel.c
opensock.c
pathconf.c
pathconf.h
paths.h
pause.c
personality.c
pkey_get.c
pkey_mprotect.c
pkey_set.c
poll.c
posix_fadvise.c
posix_fadvise64.c
posix_fallocate.c
posix_fallocate64.c
posix_madvise.c
ppoll.c
prctl.c Add a C wrapper for prctl [BZ #25896] 2020-04-30 10:42:43 -07:00
pread.c
pread64.c
pread64_nocancel.c
preadv.c
preadv2.c
preadv64.c
preadv64v2.c
prlimit.c
process_vm_readv.c Add C wrappers for process_vm_readv/process_vm_writev [BZ #25810] 2020-04-29 13:20:27 -07:00
process_vm_writev.c Add C wrappers for process_vm_readv/process_vm_writev [BZ #25810] 2020-04-29 13:20:27 -07:00
prof-freq.c
profil-counter.h
profil.c
pselect.c
pt-raise.c
pthread-pids.h
pthread_getaffinity.c
pthread_getcpuclockid.c
pthread_getname.c
pthread_kill.c
pthread_setaffinity.c
pthread_setname.c
pthread_sigqueue.c
ptrace.c
ptsname.c
pwrite.c
pwrite64.c
pwritev.c
pwritev2.c
pwritev64.c
pwritev64v2.c
raise.c
read.c
read_nocancel.c
readahead.c
readdir.c
readdir64.c
readdir64_r.c
readdir_r.c
readonly-area.c
readv.c
reboot.c
recv.c
recvfrom.c
recvmmsg.c
recvmsg.c
remove.c
rename.c
renameat.c
renameat2.c
sa_len.c
safe-fatal.h
scandir64.c
sched_getaffinity.c
sched_getcpu.c
sched_rr_gi.c
sched_setaffinity.c
segfault.c
select.c
semctl.c
semget.c
semop.c
semtimedop.c
send.c
sendmmsg.c
sendmsg.c
sendto.c
setegid.c
seteuid.c
setgid.c
setgroups.c
sethostid.c
setipv4sourcefilter.c
setitimer.c linux: Use long time_t __getitimer/__setitimer 2020-04-02 09:21:06 -07:00
setregid.c
setresgid.c
setresuid.c
setreuid.c
setrlimit.c
setrlimit64.c
setsockopt.c
setsourcefilter.c
settimeofday.c
settimezone.c
setuid.c
shlib-versions
shm-directory.c
shmat.c
shmctl.c
shmdt.c
shmget.c
shutdown.c
sigaction.c
siglist.h
signal.c
signalfd.c
sigpending.c signal: Only handle on NSIG signals on signal functions (BZ #25657) 2020-04-21 15:10:10 -03:00
sigprocmask.c linux: Use pthread_sigmask on sigprocmask 2020-04-21 15:10:07 -03:00
sigqueue.c
sigreturn.c
sigset-cvt-mask.h
sigsetops.h signal: Only handle on NSIG signals on signal functions (BZ #25657) 2020-04-21 15:10:10 -03:00
sigstack.c
sigsuspend.c
sigtimedwait.c
sigwait.c
sigwaitinfo.c
single-thread.h
sizes.h
socket.c
socketcall.h
socketpair.c
spawni.c
speed.c
splice.c
statfs64.c
statvfs.c
statvfs64.c
statx.c
statx_cp.c
statx_cp.h
sync_file_range.c
syscall-names.list ARC: Update syscall-names.list for ARC specific syscalls 2020-04-20 12:13:46 -07:00
syscalls.list Add a C wrapper for prctl [BZ #25896] 2020-04-30 10:42:43 -07:00
sysconf.c
sysctl.c Linux: Remove <sys/sysctl.h> and the sysctl function 2020-04-15 17:17:32 +02:00
sysdep-cancel.h
sysdep-vdso.h
sysdep.h
syslog.c
tcdrain.c
tcflow.c
tcflush.c
tcgetattr.c
tcgetpgrp.c
tcsendbrk.c
tcsetattr.c
tcsetpgrp.c
tee.c
termio.h
test-errno-linux.c linux: Use pthread_sigmask on sigprocmask 2020-04-21 15:10:07 -03:00
time-clockid.h
time.c
timer_create.c
timer_delete.c
timer_getoverr.c
timer_gettime.c
timer_routines.c
timer_settime.c
timerfd_gettime.c
timerfd_settime.c
times.c
timespec_get.c
truncate.c
truncate64.c
tst-affinity-pid.c
tst-affinity-static.c
tst-affinity.c
tst-align-clone.c
tst-clone.c
tst-clone2.c
tst-clone3.c
tst-fallocate-common.c
tst-fallocate.c
tst-fallocate64.c
tst-fanotify.c
tst-getdents64.c
tst-getpid1.c
tst-gettid-kill.c
tst-gettid.c
tst-glibcsyscalls.py
tst-memfd_create.c
tst-mlock2.c
tst-mman-consts.py Update kernel version to 5.6 in tst-mman-consts.py. 2020-04-09 21:19:19 +00:00
tst-o_path-locks.c
tst-ofdlocks-compat.c
tst-ofdlocks.c
tst-personality.c
tst-pkey.c
tst-quota.c
tst-readdir64-compat.c
tst-rlimit-infinity.c
tst-setgetname.c
tst-sigcontext-get_pc.c
tst-signal-numbers.py
tst-skeleton-affinity.c
tst-skeleton-thread-affinity.c
tst-socket-consts.py
tst-sync_file_range.c
tst-syscall-list.sh
tst-sysconf-iov_max-uapi.c
tst-sysconf-iov_max.c
tst-tgkill.c
tst-thread-affinity-pthread.c
tst-thread-affinity-pthread2.c
tst-thread-affinity-sched.c
tst-ttyname.c
ttyname.c
ttyname.h
ttyname_r.c
tv32-compat.h sysv/alpha: Use generic __timeval32 and helpers 2020-04-02 09:21:06 -07:00
ualarm.c
umount.c linux: Remove assembly umount2 implementation 2020-05-08 17:19:13 -03:00
umount2.c linux: Remove assembly umount2 implementation 2020-05-08 17:19:13 -03:00
unlockpt.c
update-syscall-lists.py
updwtmp.c
ustat.c
utime.c
utimensat.c
utimes.c
utmp_file.c
versionsort64.c
vfork.c
vmsplice.c
wait4.c linux: wait4: Fix incorrect return value comparison 2020-04-14 09:16:54 -07:00
waitid.c
write.c
write_nocancel.c
writev.c
xmknod.c
xmknodat.c
xstat.c
xstat64.c
xstatconv.c
xstatconv.h