User Tools

Site Tools


syscalls

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

syscalls [2014-08-06 01:32]
joshtriplett created
syscalls [2014-08-06 23:27] (current)
joshtriplett Add script to generate syscall lists, and update results
Line 1: Line 1:
-List of syscalls ​that the kernel ​doesn'​t currently ​support compiling out:+The following shell script will produce the full list of syscalls, the list of syscalls the kernel supports compiling out (from kernel/​sys_ni.c),​ and subtract the two to produce a list of syscalls the kernel ​does not support compiling out:
  
-<​code>​+<file bash check-syscalls>​ 
 +#!/bin/sh 
 +
 +    git grep -hE '​^(COMPAT_)?​SYSCALL_DEFINE'​ | sed -e '​s/​SYSCALL_DEFINE[^(]*(\([^,​)]*\).*/​sys_\1/;​s/​^COMPAT_/​compat_/'​ 
 +    sed -ne '/​^asmlinkage/​s/​^asmlinkage [^ ]* \(sys[^(]*\).*/​\1/​p'​ include/​linux/​syscalls.h 
 +} | sort -u > syscalls-all 
 +sed -ne '/​cond_syscall/​s/​[^(]*(\([^)]*\).*/​\1/​p'​ kernel/​sys_ni.c | sort -u > syscalls-optional 
 +grep -Fvxf syscalls-optional syscalls-all > syscalls-non-optional 
 +</​file>​ 
 + 
 +A snapshot of syscalls-non-optional from a recent kernel (85417aef44fc58b08773117ceb1bc6ca5684e973,​ during the 3.17 merge window): 
 + 
 +<​code ​- syscalls-non-optional> 
 +compat_sys_adjtimex 
 +compat_sys_clock_adjtime 
 +compat_sys_clock_getres 
 +compat_sys_clock_gettime 
 +compat_sys_clock_nanosleep 
 +compat_sys_clock_settime 
 +compat_sys_execve 
 +compat_sys_fallocate 
 +compat_sys_fcntl 
 +compat_sys_fcntl64 
 +compat_sys_fstatfs 
 +compat_sys_fstatfs64 
 +compat_sys_ftruncate 
 +compat_sys_ftruncate64 
 +compat_sys_futimesat 
 +compat_sys_getdents 
 +compat_sys_getdents64 
 +compat_sys_getitimer 
 +compat_sys_getrlimit 
 +compat_sys_getrusage 
 +compat_sys_gettimeofday 
 +compat_sys_io_getevents 
 +compat_sys_io_setup 
 +compat_sys_io_submit 
 +compat_sys_ioctl 
 +compat_sys_llseek 
 +compat_sys_lseek 
 +compat_sys_mount 
 +compat_sys_nanosleep 
 +compat_sys_newfstat 
 +compat_sys_newfstatat 
 +compat_sys_newlstat 
 +compat_sys_newstat 
 +compat_sys_old_getrlimit 
 +compat_sys_old_readdir 
 +compat_sys_old_select 
 +compat_sys_open 
 +compat_sys_openat 
 +compat_sys_ppoll 
 +compat_sys_pread64 
 +compat_sys_preadv 
 +compat_sys_preadv64 
 +compat_sys_pselect6 
 +compat_sys_ptrace 
 +compat_sys_pwrite64 
 +compat_sys_pwritev 
 +compat_sys_pwritev64 
 +compat_sys_readv 
 +compat_sys_rt_sigaction 
 +compat_sys_rt_sigpending 
 +compat_sys_rt_sigprocmask 
 +compat_sys_rt_sigqueueinfo 
 +compat_sys_rt_sigreturn 
 +compat_sys_rt_sigsuspend 
 +compat_sys_rt_sigtimedwait 
 +compat_sys_rt_tgsigqueueinfo 
 +compat_sys_s390_chown16 
 +compat_sys_s390_fadvise64 
 +compat_sys_s390_fadvise64_64 
 +compat_sys_s390_fallocate 
 +compat_sys_s390_fchown16 
 +compat_sys_s390_fstat64 
 +compat_sys_s390_fstatat64 
 +compat_sys_s390_ftruncate64 
 +compat_sys_s390_getegid16 
 +compat_sys_s390_geteuid16 
 +compat_sys_s390_getgid16 
 +compat_sys_s390_getgroups16 
 +compat_sys_s390_getresgid16 
 +compat_sys_s390_getresuid16 
 +compat_sys_s390_getuid16 
 +compat_sys_s390_lchown16 
 +compat_sys_s390_lstat64 
 +compat_sys_s390_mmap2 
 +compat_sys_s390_old_mmap 
 +compat_sys_s390_pread64 
 +compat_sys_s390_pwrite64 
 +compat_sys_s390_read 
 +compat_sys_s390_readahead 
 +compat_sys_s390_setfsgid16 
 +compat_sys_s390_setfsuid16 
 +compat_sys_s390_setgid16 
 +compat_sys_s390_setgroups16 
 +compat_sys_s390_setregid16 
 +compat_sys_s390_setresgid16 
 +compat_sys_s390_setresuid16 
 +compat_sys_s390_setreuid16 
 +compat_sys_s390_setuid16 
 +compat_sys_s390_stat64 
 +compat_sys_s390_sync_file_range 
 +compat_sys_s390_truncate64 
 +compat_sys_s390_write 
 +compat_sys_sched_getaffinity 
 +compat_sys_sched_rr_get_interval 
 +compat_sys_sched_setaffinity 
 +compat_sys_select 
 +compat_sys_sendfile 
 +compat_sys_sendfile64 
 +compat_sys_setitimer 
 +compat_sys_setrlimit 
 +compat_sys_settimeofday 
 +compat_sys_sigaction 
 +compat_sys_sigaltstack 
 +compat_sys_sigpending 
 +compat_sys_sigprocmask 
 +compat_sys_sigreturn 
 +compat_sys_sparc_sigaction 
 +compat_sys_statfs 
 +compat_sys_statfs64 
 +compat_sys_stime 
 +compat_sys_sync_file_range2 
 +compat_sys_sysinfo 
 +compat_sys_time 
 +compat_sys_timer_create 
 +compat_sys_timer_gettime 
 +compat_sys_timer_settime 
 +compat_sys_times 
 +compat_sys_truncate 
 +compat_sys_truncate64 
 +compat_sys_ustat 
 +compat_sys_utime 
 +compat_sys_utimensat 
 +compat_sys_utimes 
 +compat_sys_vmsplice 
 +compat_sys_wait4 
 +compat_sys_waitid 
 +compat_sys_writev 
 +sys_32_ftruncate64 
 +sys_32_llseek 
 +sys_32_mmap2 
 +sys_32_personality 
 +sys_32_pread 
 +sys_32_pwrite 
 +sys_32_sigaction 
 +sys_32_truncate64 
 +sys_64_mremap 
 +sys_64_munmap
 sys_access sys_access
 sys_adjtimex sys_adjtimex
 sys_alarm sys_alarm
 +sys_alpha_pipe
 +sys_arc_gettls
 +sys_arc_settls
 sys_brk sys_brk
 +sys_cachectl
 +sys_cacheflush
 sys_capget sys_capget
 sys_capset sys_capset
Line 19: Line 173:
 sys_clone sys_clone
 sys_close sys_close
 +sys_cmpxchg_badaddr
 sys_creat sys_creat
 sys_dup sys_dup
Line 52: Line 207:
 sys_ftruncate64 sys_ftruncate64
 sys_futimesat sys_futimesat
 +sys_get_thread_area
 sys_getcpu sys_getcpu
 sys_getcwd sys_getcwd
 sys_getdents sys_getdents
 sys_getdents64 sys_getdents64
 +sys_getdomainname
 +sys_getdtablesize
 sys_getegid sys_getegid
 sys_geteuid sys_geteuid
Line 62: Line 220:
 sys_gethostname sys_gethostname
 sys_getitimer sys_getitimer
 +sys_getpagesize
 sys_getpgid sys_getpgid
 sys_getpgrp sys_getpgrp
Line 67: Line 226:
 sys_getppid sys_getppid
 sys_getpriority sys_getpriority
 +sys_getrandom
 sys_getresgid sys_getresgid
 sys_getresuid sys_getresuid
Line 76: Line 236:
 sys_getuid sys_getuid
 sys_getxattr sys_getxattr
 +sys_getxgid
 +sys_getxpid
 +sys_getxuid
 sys_ioctl sys_ioctl
 sys_ioperm sys_ioperm
 +sys_iopl
 sys_kill sys_kill
 sys_lchown sys_lchown
Line 91: Line 255:
 sys_lstat sys_lstat
 sys_lstat64 sys_lstat64
 +sys_mips_mmap
 +sys_mips_mmap2
 sys_mkdir sys_mkdir
 sys_mkdirat sys_mkdirat
 sys_mknod sys_mknod
 sys_mknodat sys_mknodat
 +sys_mmap
 +sys_mmap2
 sys_mmap_pgoff sys_mmap_pgoff
 sys_mount sys_mount
Line 106: Line 274:
 sys_ni_syscall sys_ni_syscall
 sys_nice sys_nice
 +sys_old_adjtimex
 sys_old_getrlimit sys_old_getrlimit
 sys_old_mmap sys_old_mmap
Line 114: Line 283:
 sys_open sys_open
 sys_openat sys_openat
 +sys_osf_brk
 +sys_osf_fstat
 +sys_osf_fstatfs
 +sys_osf_fstatfs64
 +sys_osf_getdirentries
 +sys_osf_getdomainname
 +sys_osf_getitimer
 +sys_osf_getpriority
 +sys_osf_getrusage
 +sys_osf_getsysinfo
 +sys_osf_gettimeofday
 +sys_osf_lstat
 +sys_osf_mmap
 +sys_osf_mount
 +sys_osf_proplist_syscall
 +sys_osf_readv
 +sys_osf_select
 +sys_osf_set_program_attributes
 +sys_osf_setitimer
 +sys_osf_setsysinfo
 +sys_osf_settimeofday
 +sys_osf_sigaction
 +sys_osf_sigprocmask
 +sys_osf_sigstack
 +sys_osf_stat
 +sys_osf_statfs
 +sys_osf_statfs64
 +sys_osf_sysinfo
 +sys_osf_usleep_thread
 +sys_osf_utimes
 +sys_osf_utsname
 +sys_osf_wait4
 +sys_osf_writev
 sys_pause sys_pause
 sys_personality sys_personality
Line 145: Line 347:
 sys_rt_sigprocmask sys_rt_sigprocmask
 sys_rt_sigqueueinfo sys_rt_sigqueueinfo
 +sys_rt_sigreturn
 sys_rt_sigsuspend sys_rt_sigsuspend
 sys_rt_sigtimedwait sys_rt_sigtimedwait
 sys_rt_tgsigqueueinfo sys_rt_tgsigqueueinfo
 +sys_s390_fadvise64
 +sys_s390_fadvise64_64
 +sys_s390_fallocate
 +sys_s390_ipc
 +sys_s390_personality
 +sys_s390_runtime_instr
 sys_sched_get_priority_max sys_sched_get_priority_max
 sys_sched_get_priority_min sys_sched_get_priority_min
Line 163: Line 372:
 sys_sendfile sys_sendfile
 sys_sendfile64 sys_sendfile64
 +sys_set_thread_area
 sys_set_tid_address sys_set_tid_address
 sys_setdomainname sys_setdomainname
Line 169: Line 379:
 sys_setgid sys_setgid
 sys_setgroups sys_setgroups
 +sys_sethae
 sys_sethostname sys_sethostname
 sys_setitimer sys_setitimer
Line 183: Line 394:
 sys_setuid sys_setuid
 sys_setxattr sys_setxattr
-sys_sgetmask 
 sys_sigaction sys_sigaction
 sys_sigaltstack sys_sigaltstack
Line 189: Line 399:
 sys_sigpending sys_sigpending
 sys_sigprocmask sys_sigprocmask
 +sys_sigreturn
 sys_sigsuspend sys_sigsuspend
 +sys_sparc64_personality
 +sys_sparc_ipc
 +sys_sparc_pipe_real
 +sys_sparc_sigaction
 sys_splice sys_splice
-sys_ssetmask 
 sys_stat sys_stat
 sys_stat64 sys_stat64
Line 205: Line 419:
 sys_sysctl sys_sysctl
 sys_sysinfo sys_sysinfo
 +sys_sysmips
 sys_tee sys_tee
 sys_tgkill sys_tgkill
Line 227: Line 442:
 sys_utimensat sys_utimensat
 sys_utimes sys_utimes
 +sys_utrap_install
 sys_vfork sys_vfork
 sys_vhangup sys_vhangup
Line 236: Line 452:
 sys_writev sys_writev
 </​code>​ </​code>​
- 
syscalls.txt · Last modified: 2014-08-06 23:27 by joshtriplett