diff options
-rw-r--r-- | arch/x86/entry/syscalls/syscall_32.tbl | 46 | ||||
-rw-r--r-- | arch/x86/entry/syscalls/syscall_64.tbl | 638 | ||||
-rw-r--r-- | arch/x86/entry/syscalls/syscalltbl.sh | 14 | ||||
-rw-r--r-- | arch/x86/entry/vsyscall/vsyscall_64.c | 6 | ||||
-rw-r--r-- | arch/x86/include/asm/syscall_wrapper.h | 63 |
5 files changed, 405 insertions, 362 deletions
diff --git a/arch/x86/entry/syscalls/syscall_32.tbl b/arch/x86/entry/syscalls/syscall_32.tbl index 0e6cb1335db2..d6b27dab1b30 100644 --- a/arch/x86/entry/syscalls/syscall_32.tbl +++ b/arch/x86/entry/syscalls/syscall_32.tbl | |||
@@ -11,9 +11,9 @@ | |||
11 | # | 11 | # |
12 | # The abi is always "i386" for this file. | 12 | # The abi is always "i386" for this file. |
13 | # | 13 | # |
14 | 0 i386 restart_syscall sys_restart_syscall | 14 | 0 i386 restart_syscall sys_restart_syscall __ia32_sys_restart_syscall |
15 | 1 i386 exit sys_exit __ia32_sys_exit | 15 | 1 i386 exit sys_exit __ia32_sys_exit |
16 | 2 i386 fork sys_fork | 16 | 2 i386 fork sys_fork __ia32_sys_fork |
17 | 3 i386 read sys_read __ia32_sys_read | 17 | 3 i386 read sys_read __ia32_sys_read |
18 | 4 i386 write sys_write __ia32_sys_write | 18 | 4 i386 write sys_write __ia32_sys_write |
19 | 5 i386 open sys_open __ia32_compat_sys_open | 19 | 5 i386 open sys_open __ia32_compat_sys_open |
@@ -31,23 +31,23 @@ | |||
31 | 17 i386 break | 31 | 17 i386 break |
32 | 18 i386 oldstat sys_stat __ia32_sys_stat | 32 | 18 i386 oldstat sys_stat __ia32_sys_stat |
33 | 19 i386 lseek sys_lseek __ia32_compat_sys_lseek | 33 | 19 i386 lseek sys_lseek __ia32_compat_sys_lseek |
34 | 20 i386 getpid sys_getpid | 34 | 20 i386 getpid sys_getpid __ia32_sys_getpid |
35 | 21 i386 mount sys_mount __ia32_compat_sys_mount | 35 | 21 i386 mount sys_mount __ia32_compat_sys_mount |
36 | 22 i386 umount sys_oldumount __ia32_sys_oldumount | 36 | 22 i386 umount sys_oldumount __ia32_sys_oldumount |
37 | 23 i386 setuid sys_setuid16 __ia32_sys_setuid16 | 37 | 23 i386 setuid sys_setuid16 __ia32_sys_setuid16 |
38 | 24 i386 getuid sys_getuid16 | 38 | 24 i386 getuid sys_getuid16 __ia32_sys_getuid16 |
39 | 25 i386 stime sys_stime __ia32_compat_sys_stime | 39 | 25 i386 stime sys_stime __ia32_compat_sys_stime |
40 | 26 i386 ptrace sys_ptrace __ia32_compat_sys_ptrace | 40 | 26 i386 ptrace sys_ptrace __ia32_compat_sys_ptrace |
41 | 27 i386 alarm sys_alarm __ia32_sys_alarm | 41 | 27 i386 alarm sys_alarm __ia32_sys_alarm |
42 | 28 i386 oldfstat sys_fstat __ia32_sys_fstat | 42 | 28 i386 oldfstat sys_fstat __ia32_sys_fstat |
43 | 29 i386 pause sys_pause | 43 | 29 i386 pause sys_pause __ia32_sys_pause |
44 | 30 i386 utime sys_utime __ia32_compat_sys_utime | 44 | 30 i386 utime sys_utime __ia32_compat_sys_utime |
45 | 31 i386 stty | 45 | 31 i386 stty |
46 | 32 i386 gtty | 46 | 32 i386 gtty |
47 | 33 i386 access sys_access __ia32_sys_access | 47 | 33 i386 access sys_access __ia32_sys_access |
48 | 34 i386 nice sys_nice __ia32_sys_nice | 48 | 34 i386 nice sys_nice __ia32_sys_nice |
49 | 35 i386 ftime | 49 | 35 i386 ftime |
50 | 36 i386 sync sys_sync | 50 | 36 i386 sync sys_sync __ia32_sys_sync |
51 | 37 i386 kill sys_kill __ia32_sys_kill | 51 | 37 i386 kill sys_kill __ia32_sys_kill |
52 | 38 i386 rename sys_rename __ia32_sys_rename | 52 | 38 i386 rename sys_rename __ia32_sys_rename |
53 | 39 i386 mkdir sys_mkdir __ia32_sys_mkdir | 53 | 39 i386 mkdir sys_mkdir __ia32_sys_mkdir |
@@ -58,10 +58,10 @@ | |||
58 | 44 i386 prof | 58 | 44 i386 prof |
59 | 45 i386 brk sys_brk __ia32_sys_brk | 59 | 45 i386 brk sys_brk __ia32_sys_brk |
60 | 46 i386 setgid sys_setgid16 __ia32_sys_setgid16 | 60 | 46 i386 setgid sys_setgid16 __ia32_sys_setgid16 |
61 | 47 i386 getgid sys_getgid16 | 61 | 47 i386 getgid sys_getgid16 __ia32_sys_getgid16 |
62 | 48 i386 signal sys_signal __ia32_sys_signal | 62 | 48 i386 signal sys_signal __ia32_sys_signal |
63 | 49 i386 geteuid sys_geteuid16 | 63 | 49 i386 geteuid sys_geteuid16 __ia32_sys_geteuid16 |
64 | 50 i386 getegid sys_getegid16 | 64 | 50 i386 getegid sys_getegid16 __ia32_sys_getegid16 |
65 | 51 i386 acct sys_acct __ia32_sys_acct | 65 | 51 i386 acct sys_acct __ia32_sys_acct |
66 | 52 i386 umount2 sys_umount __ia32_sys_umount | 66 | 52 i386 umount2 sys_umount __ia32_sys_umount |
67 | 53 i386 lock | 67 | 53 i386 lock |
@@ -75,11 +75,11 @@ | |||
75 | 61 i386 chroot sys_chroot __ia32_sys_chroot | 75 | 61 i386 chroot sys_chroot __ia32_sys_chroot |
76 | 62 i386 ustat sys_ustat __ia32_compat_sys_ustat | 76 | 62 i386 ustat sys_ustat __ia32_compat_sys_ustat |
77 | 63 i386 dup2 sys_dup2 __ia32_sys_dup2 | 77 | 63 i386 dup2 sys_dup2 __ia32_sys_dup2 |
78 | 64 i386 getppid sys_getppid | 78 | 64 i386 getppid sys_getppid __ia32_sys_getppid |
79 | 65 i386 getpgrp sys_getpgrp | 79 | 65 i386 getpgrp sys_getpgrp __ia32_sys_getpgrp |
80 | 66 i386 setsid sys_setsid | 80 | 66 i386 setsid sys_setsid __ia32_sys_setsid |
81 | 67 i386 sigaction sys_sigaction __ia32_compat_sys_sigaction | 81 | 67 i386 sigaction sys_sigaction __ia32_compat_sys_sigaction |
82 | 68 i386 sgetmask sys_sgetmask | 82 | 68 i386 sgetmask sys_sgetmask __ia32_sys_sgetmask |
83 | 69 i386 ssetmask sys_ssetmask __ia32_sys_ssetmask | 83 | 69 i386 ssetmask sys_ssetmask __ia32_sys_ssetmask |
84 | 70 i386 setreuid sys_setreuid16 __ia32_sys_setreuid16 | 84 | 70 i386 setreuid sys_setreuid16 __ia32_sys_setreuid16 |
85 | 71 i386 setregid sys_setregid16 __ia32_sys_setregid16 | 85 | 71 i386 setregid sys_setregid16 __ia32_sys_setregid16 |
@@ -122,7 +122,7 @@ | |||
122 | 108 i386 fstat sys_newfstat __ia32_compat_sys_newfstat | 122 | 108 i386 fstat sys_newfstat __ia32_compat_sys_newfstat |
123 | 109 i386 olduname sys_uname __ia32_sys_uname | 123 | 109 i386 olduname sys_uname __ia32_sys_uname |
124 | 110 i386 iopl sys_iopl __ia32_sys_iopl | 124 | 110 i386 iopl sys_iopl __ia32_sys_iopl |
125 | 111 i386 vhangup sys_vhangup | 125 | 111 i386 vhangup sys_vhangup __ia32_sys_vhangup |
126 | 112 i386 idle | 126 | 112 i386 idle |
127 | 113 i386 vm86old sys_vm86old sys_ni_syscall | 127 | 113 i386 vm86old sys_vm86old sys_ni_syscall |
128 | 114 i386 wait4 sys_wait4 __ia32_compat_sys_wait4 | 128 | 114 i386 wait4 sys_wait4 __ia32_compat_sys_wait4 |
@@ -164,12 +164,12 @@ | |||
164 | 150 i386 mlock sys_mlock __ia32_sys_mlock | 164 | 150 i386 mlock sys_mlock __ia32_sys_mlock |
165 | 151 i386 munlock sys_munlock __ia32_sys_munlock | 165 | 151 i386 munlock sys_munlock __ia32_sys_munlock |
166 | 152 i386 mlockall sys_mlockall __ia32_sys_mlockall | 166 | 152 i386 mlockall sys_mlockall __ia32_sys_mlockall |
167 | 153 i386 munlockall sys_munlockall | 167 | 153 i386 munlockall sys_munlockall __ia32_sys_munlockall |
168 | 154 i386 sched_setparam sys_sched_setparam __ia32_sys_sched_setparam | 168 | 154 i386 sched_setparam sys_sched_setparam __ia32_sys_sched_setparam |
169 | 155 i386 sched_getparam sys_sched_getparam __ia32_sys_sched_getparam | 169 | 155 i386 sched_getparam sys_sched_getparam __ia32_sys_sched_getparam |
170 | 156 i386 sched_setscheduler sys_sched_setscheduler __ia32_sys_sched_setscheduler | 170 | 156 i386 sched_setscheduler sys_sched_setscheduler __ia32_sys_sched_setscheduler |
171 | 157 i386 sched_getscheduler sys_sched_getscheduler __ia32_sys_sched_getscheduler | 171 | 157 i386 sched_getscheduler sys_sched_getscheduler __ia32_sys_sched_getscheduler |
172 | 158 i386 sched_yield sys_sched_yield | 172 | 158 i386 sched_yield sys_sched_yield __ia32_sys_sched_yield |
173 | 159 i386 sched_get_priority_max sys_sched_get_priority_max __ia32_sys_sched_get_priority_max | 173 | 159 i386 sched_get_priority_max sys_sched_get_priority_max __ia32_sys_sched_get_priority_max |
174 | 160 i386 sched_get_priority_min sys_sched_get_priority_min __ia32_sys_sched_get_priority_min | 174 | 160 i386 sched_get_priority_min sys_sched_get_priority_min __ia32_sys_sched_get_priority_min |
175 | 161 i386 sched_rr_get_interval sys_sched_rr_get_interval __ia32_compat_sys_sched_rr_get_interval | 175 | 161 i386 sched_rr_get_interval sys_sched_rr_get_interval __ia32_compat_sys_sched_rr_get_interval |
@@ -201,7 +201,7 @@ | |||
201 | 187 i386 sendfile sys_sendfile __ia32_compat_sys_sendfile | 201 | 187 i386 sendfile sys_sendfile __ia32_compat_sys_sendfile |
202 | 188 i386 getpmsg | 202 | 188 i386 getpmsg |
203 | 189 i386 putpmsg | 203 | 189 i386 putpmsg |
204 | 190 i386 vfork sys_vfork | 204 | 190 i386 vfork sys_vfork __ia32_sys_vfork |
205 | 191 i386 ugetrlimit sys_getrlimit __ia32_compat_sys_getrlimit | 205 | 191 i386 ugetrlimit sys_getrlimit __ia32_compat_sys_getrlimit |
206 | 192 i386 mmap2 sys_mmap_pgoff __ia32_sys_mmap_pgoff | 206 | 192 i386 mmap2 sys_mmap_pgoff __ia32_sys_mmap_pgoff |
207 | 193 i386 truncate64 sys_truncate64 __ia32_compat_sys_x86_truncate64 | 207 | 193 i386 truncate64 sys_truncate64 __ia32_compat_sys_x86_truncate64 |
@@ -210,10 +210,10 @@ | |||
210 | 196 i386 lstat64 sys_lstat64 __ia32_compat_sys_x86_lstat64 | 210 | 196 i386 lstat64 sys_lstat64 __ia32_compat_sys_x86_lstat64 |
211 | 197 i386 fstat64 sys_fstat64 __ia32_compat_sys_x86_fstat64 | 211 | 197 i386 fstat64 sys_fstat64 __ia32_compat_sys_x86_fstat64 |
212 | 198 i386 lchown32 sys_lchown __ia32_sys_lchown | 212 | 198 i386 lchown32 sys_lchown __ia32_sys_lchown |
213 | 199 i386 getuid32 sys_getuid | 213 | 199 i386 getuid32 sys_getuid __ia32_sys_getuid |
214 | 200 i386 getgid32 sys_getgid | 214 | 200 i386 getgid32 sys_getgid __ia32_sys_getgid |
215 | 201 i386 geteuid32 sys_geteuid | 215 | 201 i386 geteuid32 sys_geteuid __ia32_sys_geteuid |
216 | 202 i386 getegid32 sys_getegid | 216 | 202 i386 getegid32 sys_getegid __ia32_sys_getegid |
217 | 203 i386 setreuid32 sys_setreuid __ia32_sys_setreuid | 217 | 203 i386 setreuid32 sys_setreuid __ia32_sys_setreuid |
218 | 204 i386 setregid32 sys_setregid __ia32_sys_setregid | 218 | 204 i386 setregid32 sys_setregid __ia32_sys_setregid |
219 | 205 i386 getgroups32 sys_getgroups __ia32_sys_getgroups | 219 | 205 i386 getgroups32 sys_getgroups __ia32_sys_getgroups |
@@ -235,7 +235,7 @@ | |||
235 | 221 i386 fcntl64 sys_fcntl64 __ia32_compat_sys_fcntl64 | 235 | 221 i386 fcntl64 sys_fcntl64 __ia32_compat_sys_fcntl64 |
236 | # 222 is unused | 236 | # 222 is unused |
237 | # 223 is unused | 237 | # 223 is unused |
238 | 224 i386 gettid sys_gettid | 238 | 224 i386 gettid sys_gettid __ia32_sys_gettid |
239 | 225 i386 readahead sys_readahead __ia32_compat_sys_x86_readahead | 239 | 225 i386 readahead sys_readahead __ia32_compat_sys_x86_readahead |
240 | 226 i386 setxattr sys_setxattr __ia32_sys_setxattr | 240 | 226 i386 setxattr sys_setxattr __ia32_sys_setxattr |
241 | 227 i386 lsetxattr sys_lsetxattr __ia32_sys_lsetxattr | 241 | 227 i386 lsetxattr sys_lsetxattr __ia32_sys_lsetxattr |
@@ -302,7 +302,7 @@ | |||
302 | 288 i386 keyctl sys_keyctl __ia32_compat_sys_keyctl | 302 | 288 i386 keyctl sys_keyctl __ia32_compat_sys_keyctl |
303 | 289 i386 ioprio_set sys_ioprio_set __ia32_sys_ioprio_set | 303 | 289 i386 ioprio_set sys_ioprio_set __ia32_sys_ioprio_set |
304 | 290 i386 ioprio_get sys_ioprio_get __ia32_sys_ioprio_get | 304 | 290 i386 ioprio_get sys_ioprio_get __ia32_sys_ioprio_get |
305 | 291 i386 inotify_init sys_inotify_init | 305 | 291 i386 inotify_init sys_inotify_init __ia32_sys_inotify_init |
306 | 292 i386 inotify_add_watch sys_inotify_add_watch __ia32_sys_inotify_add_watch | 306 | 292 i386 inotify_add_watch sys_inotify_add_watch __ia32_sys_inotify_add_watch |
307 | 293 i386 inotify_rm_watch sys_inotify_rm_watch __ia32_sys_inotify_rm_watch | 307 | 293 i386 inotify_rm_watch sys_inotify_rm_watch __ia32_sys_inotify_rm_watch |
308 | 294 i386 migrate_pages sys_migrate_pages __ia32_sys_migrate_pages | 308 | 294 i386 migrate_pages sys_migrate_pages __ia32_sys_migrate_pages |
diff --git a/arch/x86/entry/syscalls/syscall_64.tbl b/arch/x86/entry/syscalls/syscall_64.tbl index 73f4951fc2fa..4dfe42666d0c 100644 --- a/arch/x86/entry/syscalls/syscall_64.tbl +++ b/arch/x86/entry/syscalls/syscall_64.tbl | |||
@@ -4,341 +4,343 @@ | |||
4 | # The format is: | 4 | # The format is: |
5 | # <number> <abi> <name> <entry point> | 5 | # <number> <abi> <name> <entry point> |
6 | # | 6 | # |
7 | # The __x64_sys_*() stubs are created on-the-fly for sys_*() system calls | ||
8 | # | ||
7 | # The abi is "common", "64" or "x32" for this file. | 9 | # The abi is "common", "64" or "x32" for this file. |
8 | # | 10 | # |
9 | 0 common read sys_read | 11 | 0 common read __x64_sys_read |
10 | 1 common write sys_write | 12 | 1 common write __x64_sys_write |
11 | 2 common open sys_open | 13 | 2 common open __x64_sys_open |
12 | 3 common close sys_close | 14 | 3 common close __x64_sys_close |
13 | 4 common stat sys_newstat | 15 | 4 common stat __x64_sys_newstat |
14 | 5 common fstat sys_newfstat | 16 | 5 common fstat __x64_sys_newfstat |
15 | 6 common lstat sys_newlstat | 17 | 6 common lstat __x64_sys_newlstat |
16 | 7 common poll sys_poll | 18 | 7 common poll __x64_sys_poll |
17 | 8 common lseek sys_lseek | 19 | 8 common lseek __x64_sys_lseek |
18 | 9 common mmap sys_mmap | 20 | 9 common mmap __x64_sys_mmap |
19 | 10 common mprotect sys_mprotect | 21 | 10 common mprotect __x64_sys_mprotect |
20 | 11 common munmap sys_munmap | 22 | 11 common munmap __x64_sys_munmap |
21 | 12 common brk sys_brk | 23 | 12 common brk __x64_sys_brk |
22 | 13 64 rt_sigaction sys_rt_sigaction | 24 | 13 64 rt_sigaction __x64_sys_rt_sigaction |
23 | 14 common rt_sigprocmask sys_rt_sigprocmask | 25 | 14 common rt_sigprocmask __x64_sys_rt_sigprocmask |
24 | 15 64 rt_sigreturn sys_rt_sigreturn/ptregs | 26 | 15 64 rt_sigreturn __x64_sys_rt_sigreturn/ptregs |
25 | 16 64 ioctl sys_ioctl | 27 | 16 64 ioctl __x64_sys_ioctl |
26 | 17 common pread64 sys_pread64 | 28 | 17 common pread64 __x64_sys_pread64 |
27 | 18 common pwrite64 sys_pwrite64 | 29 | 18 common pwrite64 __x64_sys_pwrite64 |
28 | 19 64 readv sys_readv | 30 | 19 64 readv __x64_sys_readv |
29 | 20 64 writev sys_writev | 31 | 20 64 writev __x64_sys_writev |
30 | 21 common access sys_access | 32 | 21 common access __x64_sys_access |
31 | 22 common pipe sys_pipe | 33 | 22 common pipe __x64_sys_pipe |
32 | 23 common select sys_select | 34 | 23 common select __x64_sys_select |
33 | 24 common sched_yield sys_sched_yield | 35 | 24 common sched_yield __x64_sys_sched_yield |
34 | 25 common mremap sys_mremap | 36 | 25 common mremap __x64_sys_mremap |
35 | 26 common msync sys_msync | 37 | 26 common msync __x64_sys_msync |
36 | 27 common mincore sys_mincore | 38 | 27 common mincore __x64_sys_mincore |
37 | 28 common madvise sys_madvise | 39 | 28 common madvise __x64_sys_madvise |
38 | 29 common shmget sys_shmget | 40 | 29 common shmget __x64_sys_shmget |
39 | 30 common shmat sys_shmat | 41 | 30 common shmat __x64_sys_shmat |
40 | 31 common shmctl sys_shmctl | 42 | 31 common shmctl __x64_sys_shmctl |
41 | 32 common dup sys_dup | 43 | 32 common dup __x64_sys_dup |
42 | 33 common dup2 sys_dup2 | 44 | 33 common dup2 __x64_sys_dup2 |
43 | 34 common pause sys_pause | 45 | 34 common pause __x64_sys_pause |
44 | 35 common nanosleep sys_nanosleep | 46 | 35 common nanosleep __x64_sys_nanosleep |
45 | 36 common getitimer sys_getitimer | 47 | 36 common getitimer __x64_sys_getitimer |
46 | 37 common alarm sys_alarm | 48 | 37 common alarm __x64_sys_alarm |
47 | 38 common setitimer sys_setitimer | 49 | 38 common setitimer __x64_sys_setitimer |
48 | 39 common getpid sys_getpid | 50 | 39 common getpid __x64_sys_getpid |
49 | 40 common sendfile sys_sendfile64 | 51 | 40 common sendfile __x64_sys_sendfile64 |
50 | 41 common socket sys_socket | 52 | 41 common socket __x64_sys_socket |
51 | 42 common connect sys_connect | 53 | 42 common connect __x64_sys_connect |
52 | 43 common accept sys_accept | 54 | 43 common accept __x64_sys_accept |
53 | 44 common sendto sys_sendto | 55 | 44 common sendto __x64_sys_sendto |
54 | 45 64 recvfrom sys_recvfrom | 56 | 45 64 recvfrom __x64_sys_recvfrom |
55 | 46 64 sendmsg sys_sendmsg | 57 | 46 64 sendmsg __x64_sys_sendmsg |
56 | 47 64 recvmsg sys_recvmsg | 58 | 47 64 recvmsg __x64_sys_recvmsg |
57 | 48 common shutdown sys_shutdown | 59 | 48 common shutdown __x64_sys_shutdown |
58 | 49 common bind sys_bind | 60 | 49 common bind __x64_sys_bind |
59 | 50 common listen sys_listen | 61 | 50 common listen __x64_sys_listen |
60 | 51 common getsockname sys_getsockname | 62 | 51 common getsockname __x64_sys_getsockname |
61 | 52 common getpeername sys_getpeername | 63 | 52 common getpeername __x64_sys_getpeername |
62 | 53 common socketpair sys_socketpair | 64 | 53 common socketpair __x64_sys_socketpair |
63 | 54 64 setsockopt sys_setsockopt | 65 | 54 64 setsockopt __x64_sys_setsockopt |
64 | 55 64 getsockopt sys_getsockopt | 66 | 55 64 getsockopt __x64_sys_getsockopt |
65 | 56 common clone sys_clone/ptregs | 67 | 56 common clone __x64_sys_clone/ptregs |
66 | 57 common fork sys_fork/ptregs | 68 | 57 common fork __x64_sys_fork/ptregs |
67 | 58 common vfork sys_vfork/ptregs | 69 | 58 common vfork __x64_sys_vfork/ptregs |
68 | 59 64 execve sys_execve/ptregs | 70 | 59 64 execve __x64_sys_execve/ptregs |
69 | 60 common exit sys_exit | 71 | 60 common exit __x64_sys_exit |
70 | 61 common wait4 sys_wait4 | 72 | 61 common wait4 __x64_sys_wait4 |
71 | 62 common kill sys_kill | 73 | 62 common kill __x64_sys_kill |
72 | 63 common uname sys_newuname | 74 | 63 common uname __x64_sys_newuname |
73 | 64 common semget sys_semget | 75 | 64 common semget __x64_sys_semget |
74 | 65 common semop sys_semop | 76 | 65 common semop __x64_sys_semop |
75 | 66 common semctl sys_semctl | 77 | 66 common semctl __x64_sys_semctl |
76 | 67 common shmdt sys_shmdt | 78 | 67 common shmdt __x64_sys_shmdt |
77 | 68 common msgget sys_msgget | 79 | 68 common msgget __x64_sys_msgget |
78 | 69 common msgsnd sys_msgsnd | 80 | 69 common msgsnd __x64_sys_msgsnd |
79 | 70 common msgrcv sys_msgrcv | 81 | 70 common msgrcv __x64_sys_msgrcv |
80 | 71 common msgctl sys_msgctl | 82 | 71 common msgctl __x64_sys_msgctl |
81 | 72 common fcntl sys_fcntl | 83 | 72 common fcntl __x64_sys_fcntl |
82 | 73 common flock sys_flock | 84 | 73 common flock __x64_sys_flock |
83 | 74 common fsync sys_fsync | 85 | 74 common fsync __x64_sys_fsync |
84 | 75 common fdatasync sys_fdatasync | 86 | 75 common fdatasync __x64_sys_fdatasync |
85 | 76 common truncate sys_truncate | 87 | 76 common truncate __x64_sys_truncate |
86 | 77 common ftruncate sys_ftruncate | 88 | 77 common ftruncate __x64_sys_ftruncate |
87 | 78 common getdents sys_getdents | 89 | 78 common getdents __x64_sys_getdents |
88 | 79 common getcwd sys_getcwd | 90 | 79 common getcwd __x64_sys_getcwd |
89 | 80 common chdir sys_chdir | 91 | 80 common chdir __x64_sys_chdir |
90 | 81 common fchdir sys_fchdir | 92 | 81 common fchdir __x64_sys_fchdir |
91 | 82 common rename sys_rename | 93 | 82 common rename __x64_sys_rename |
92 | 83 common mkdir sys_mkdir | 94 | 83 common mkdir __x64_sys_mkdir |
93 | 84 common rmdir sys_rmdir | 95 | 84 common rmdir __x64_sys_rmdir |
94 | 85 common creat sys_creat | 96 | 85 common creat __x64_sys_creat |
95 | 86 common link sys_link | 97 | 86 common link __x64_sys_link |
96 | 87 common unlink sys_unlink | 98 | 87 common unlink __x64_sys_unlink |
97 | 88 common symlink sys_symlink | 99 | 88 common symlink __x64_sys_symlink |
98 | 89 common readlink sys_readlink | 100 | 89 common readlink __x64_sys_readlink |
99 | 90 common chmod sys_chmod | 101 | 90 common chmod __x64_sys_chmod |
100 | 91 common fchmod sys_fchmod | 102 | 91 common fchmod __x64_sys_fchmod |
101 | 92 common chown sys_chown | 103 | 92 common chown __x64_sys_chown |
102 | 93 common fchown sys_fchown | 104 | 93 common fchown __x64_sys_fchown |
103 | 94 common lchown sys_lchown | 105 | 94 common lchown __x64_sys_lchown |
104 | 95 common umask sys_umask | 106 | 95 common umask __x64_sys_umask |
105 | 96 common gettimeofday sys_gettimeofday | 107 | 96 common gettimeofday __x64_sys_gettimeofday |
106 | 97 common getrlimit sys_getrlimit | 108 | 97 common getrlimit __x64_sys_getrlimit |
107 | 98 common getrusage sys_getrusage | 109 | 98 common getrusage __x64_sys_getrusage |
108 | 99 common sysinfo sys_sysinfo | 110 | 99 common sysinfo __x64_sys_sysinfo |
109 | 100 common times sys_times | 111 | 100 common times __x64_sys_times |
110 | 101 64 ptrace sys_ptrace | 112 | 101 64 ptrace __x64_sys_ptrace |
111 | 102 common getuid sys_getuid | 113 | 102 common getuid __x64_sys_getuid |
112 | 103 common syslog sys_syslog | 114 | 103 common syslog __x64_sys_syslog |
113 | 104 common getgid sys_getgid | 115 | 104 common getgid __x64_sys_getgid |
114 | 105 common setuid sys_setuid | 116 | 105 common setuid __x64_sys_setuid |
115 | 106 common setgid sys_setgid | 117 | 106 common setgid __x64_sys_setgid |
116 | 107 common geteuid sys_geteuid | 118 | 107 common geteuid __x64_sys_geteuid |
117 | 108 common getegid sys_getegid | 119 | 108 common getegid __x64_sys_getegid |
118 | 109 common setpgid sys_setpgid | 120 | 109 common setpgid __x64_sys_setpgid |
119 | 110 common getppid sys_getppid | 121 | 110 common getppid __x64_sys_getppid |
120 | 111 common getpgrp sys_getpgrp | 122 | 111 common getpgrp __x64_sys_getpgrp |
121 | 112 common setsid sys_setsid | 123 | 112 common setsid __x64_sys_setsid |
122 | 113 common setreuid sys_setreuid | 124 | 113 common setreuid __x64_sys_setreuid |
123 | 114 common setregid sys_setregid | 125 | 114 common setregid __x64_sys_setregid |
124 | 115 common getgroups sys_getgroups | 126 | 115 common getgroups __x64_sys_getgroups |
125 | 116 common setgroups sys_setgroups | 127 | 116 common setgroups __x64_sys_setgroups |
126 | 117 common setresuid sys_setresuid | 128 | 117 common setresuid __x64_sys_setresuid |
127 | 118 common getresuid sys_getresuid | 129 | 118 common getresuid __x64_sys_getresuid |
128 | 119 common setresgid sys_setresgid | 130 | 119 common setresgid __x64_sys_setresgid |
129 | 120 common getresgid sys_getresgid | 131 | 120 common getresgid __x64_sys_getresgid |
130 | 121 common getpgid sys_getpgid | 132 | 121 common getpgid __x64_sys_getpgid |
131 | 122 common setfsuid sys_setfsuid | 133 | 122 common setfsuid __x64_sys_setfsuid |
132 | 123 common setfsgid sys_setfsgid | 134 | 123 common setfsgid __x64_sys_setfsgid |
133 | 124 common getsid sys_getsid | 135 | 124 common getsid __x64_sys_getsid |
134 | 125 common capget sys_capget | 136 | 125 common capget __x64_sys_capget |
135 | 126 common capset sys_capset | 137 | 126 common capset __x64_sys_capset |
136 | 127 64 rt_sigpending sys_rt_sigpending | 138 | 127 64 rt_sigpending __x64_sys_rt_sigpending |
137 | 128 64 rt_sigtimedwait sys_rt_sigtimedwait | 139 | 128 64 rt_sigtimedwait __x64_sys_rt_sigtimedwait |
138 | 129 64 rt_sigqueueinfo sys_rt_sigqueueinfo | 140 | 129 64 rt_sigqueueinfo __x64_sys_rt_sigqueueinfo |
139 | 130 common rt_sigsuspend sys_rt_sigsuspend | 141 | 130 common rt_sigsuspend __x64_sys_rt_sigsuspend |
140 | 131 64 sigaltstack sys_sigaltstack | 142 | 131 64 sigaltstack __x64_sys_sigaltstack |
141 | 132 common utime sys_utime | 143 | 132 common utime __x64_sys_utime |
142 | 133 common mknod sys_mknod | 144 | 133 common mknod __x64_sys_mknod |
143 | 134 64 uselib | 145 | 134 64 uselib |
144 | 135 common personality sys_personality | 146 | 135 common personality __x64_sys_personality |
145 | 136 common ustat sys_ustat | 147 | 136 common ustat __x64_sys_ustat |
146 | 137 common statfs sys_statfs | 148 | 137 common statfs __x64_sys_statfs |
147 | 138 common fstatfs sys_fstatfs | 149 | 138 common fstatfs __x64_sys_fstatfs |
148 | 139 common sysfs sys_sysfs | 150 | 139 common sysfs __x64_sys_sysfs |
149 | 140 common getpriority sys_getpriority | 151 | 140 common getpriority __x64_sys_getpriority |
150 | 141 common setpriority sys_setpriority | 152 | 141 common setpriority __x64_sys_setpriority |
151 | 142 common sched_setparam sys_sched_setparam | 153 | 142 common sched_setparam __x64_sys_sched_setparam |
152 | 143 common sched_getparam sys_sched_getparam | 154 | 143 common sched_getparam __x64_sys_sched_getparam |
153 | 144 common sched_setscheduler sys_sched_setscheduler | 155 | 144 common sched_setscheduler __x64_sys_sched_setscheduler |
154 | 145 common sched_getscheduler sys_sched_getscheduler | 156 | 145 common sched_getscheduler __x64_sys_sched_getscheduler |
155 | 146 common sched_get_priority_max sys_sched_get_priority_max | 157 | 146 common sched_get_priority_max __x64_sys_sched_get_priority_max |
156 | 147 common sched_get_priority_min sys_sched_get_priority_min | 158 | 147 common sched_get_priority_min __x64_sys_sched_get_priority_min |
157 | 148 common sched_rr_get_interval sys_sched_rr_get_interval | 159 | 148 common sched_rr_get_interval __x64_sys_sched_rr_get_interval |
158 | 149 common mlock sys_mlock | 160 | 149 common mlock __x64_sys_mlock |
159 | 150 common munlock sys_munlock | 161 | 150 common munlock __x64_sys_munlock |
160 | 151 common mlockall sys_mlockall | 162 | 151 common mlockall __x64_sys_mlockall |
161 | 152 common munlockall sys_munlockall | 163 | 152 common munlockall __x64_sys_munlockall |
162 | 153 common vhangup sys_vhangup | 164 | 153 common vhangup __x64_sys_vhangup |
163 | 154 common modify_ldt sys_modify_ldt | 165 | 154 common modify_ldt __x64_sys_modify_ldt |
164 | 155 common pivot_root sys_pivot_root | 166 | 155 common pivot_root __x64_sys_pivot_root |
165 | 156 64 _sysctl sys_sysctl | 167 | 156 64 _sysctl __x64_sys_sysctl |
166 | 157 common prctl sys_prctl | 168 | 157 common prctl __x64_sys_prctl |
167 | 158 common arch_prctl sys_arch_prctl | 169 | 158 common arch_prctl __x64_sys_arch_prctl |
168 | 159 common adjtimex sys_adjtimex | 170 | 159 common adjtimex __x64_sys_adjtimex |
169 | 160 common setrlimit sys_setrlimit | 171 | 160 common setrlimit __x64_sys_setrlimit |
170 | 161 common chroot sys_chroot | 172 | 161 common chroot __x64_sys_chroot |
171 | 162 common sync sys_sync | 173 | 162 common sync __x64_sys_sync |
172 | 163 common acct sys_acct | 174 | 163 common acct __x64_sys_acct |
173 | 164 common settimeofday sys_settimeofday | 175 | 164 common settimeofday __x64_sys_settimeofday |
174 | 165 common mount sys_mount | 176 | 165 common mount __x64_sys_mount |
175 | 166 common umount2 sys_umount | 177 | 166 common umount2 __x64_sys_umount |
176 | 167 common swapon sys_swapon | 178 | 167 common swapon __x64_sys_swapon |
177 | 168 common swapoff sys_swapoff | 179 | 168 common swapoff __x64_sys_swapoff |
178 | 169 common reboot sys_reboot | 180 | 169 common reboot __x64_sys_reboot |
179 | 170 common sethostname sys_sethostname | 181 | 170 common sethostname __x64_sys_sethostname |
180 | 171 common setdomainname sys_setdomainname | 182 | 171 common setdomainname __x64_sys_setdomainname |
181 | 172 common iopl sys_iopl/ptregs | 183 | 172 common iopl __x64_sys_iopl/ptregs |
182 | 173 common ioperm sys_ioperm | 184 | 173 common ioperm __x64_sys_ioperm |
183 | 174 64 create_module | 185 | 174 64 create_module |
184 | 175 common init_module sys_init_module | 186 | 175 common init_module __x64_sys_init_module |
185 | 176 common delete_module sys_delete_module | 187 | 176 common delete_module __x64_sys_delete_module |
186 | 177 64 get_kernel_syms | 188 | 177 64 get_kernel_syms |
187 | 178 64 query_module | 189 | 178 64 query_module |
188 | 179 common quotactl sys_quotactl | 190 | 179 common quotactl __x64_sys_quotactl |
189 | 180 64 nfsservctl | 191 | 180 64 nfsservctl |
190 | 181 common getpmsg | 192 | 181 common getpmsg |
191 | 182 common putpmsg | 193 | 182 common putpmsg |
192 | 183 common afs_syscall | 194 | 183 common afs_syscall |
193 | 184 common tuxcall | 195 | 184 common tuxcall |
194 | 185 common security | 196 | 185 common security |
195 | 186 common gettid sys_gettid | 197 | 186 common gettid __x64_sys_gettid |
196 | 187 common readahead sys_readahead | 198 | 187 common readahead __x64_sys_readahead |
197 | 188 common setxattr sys_setxattr | 199 | 188 common setxattr __x64_sys_setxattr |
198 | 189 common lsetxattr sys_lsetxattr | 200 | 189 common lsetxattr __x64_sys_lsetxattr |
199 | 190 common fsetxattr sys_fsetxattr | 201 | 190 common fsetxattr __x64_sys_fsetxattr |
200 | 191 common getxattr sys_getxattr | 202 | 191 common getxattr __x64_sys_getxattr |
201 | 192 common lgetxattr sys_lgetxattr | 203 | 192 common lgetxattr __x64_sys_lgetxattr |
202 | 193 common fgetxattr sys_fgetxattr | 204 | 193 common fgetxattr __x64_sys_fgetxattr |
203 | 194 common listxattr sys_listxattr | 205 | 194 common listxattr __x64_sys_listxattr |
204 | 195 common llistxattr sys_llistxattr | 206 | 195 common llistxattr __x64_sys_llistxattr |
205 | 196 common flistxattr sys_flistxattr | 207 | 196 common flistxattr __x64_sys_flistxattr |
206 | 197 common removexattr sys_removexattr | 208 | 197 common removexattr __x64_sys_removexattr |
207 | 198 common lremovexattr sys_lremovexattr | 209 | 198 common lremovexattr __x64_sys_lremovexattr |
208 | 199 common fremovexattr sys_fremovexattr | 210 | 199 common fremovexattr __x64_sys_fremovexattr |
209 | 200 common tkill sys_tkill | 211 | 200 common tkill __x64_sys_tkill |
210 | 201 common time sys_time | 212 | 201 common time __x64_sys_time |
211 | 202 common futex sys_futex | 213 | 202 common futex __x64_sys_futex |
212 | 203 common sched_setaffinity sys_sched_setaffinity | 214 | 203 common sched_setaffinity __x64_sys_sched_setaffinity |
213 | 204 common sched_getaffinity sys_sched_getaffinity | 215 | 204 common sched_getaffinity __x64_sys_sched_getaffinity |
214 | 205 64 set_thread_area | 216 | 205 64 set_thread_area |
215 | 206 64 io_setup sys_io_setup | 217 | 206 64 io_setup __x64_sys_io_setup |
216 | 207 common io_destroy sys_io_destroy | 218 | 207 common io_destroy __x64_sys_io_destroy |
217 | 208 common io_getevents sys_io_getevents | 219 | 208 common io_getevents __x64_sys_io_getevents |
218 | 209 64 io_submit sys_io_submit | 220 | 209 64 io_submit __x64_sys_io_submit |
219 | 210 common io_cancel sys_io_cancel | 221 | 210 common io_cancel __x64_sys_io_cancel |
220 | 211 64 get_thread_area | 222 | 211 64 get_thread_area |
221 | 212 common lookup_dcookie sys_lookup_dcookie | 223 | 212 common lookup_dcookie __x64_sys_lookup_dcookie |
222 | 213 common epoll_create sys_epoll_create | 224 | 213 common epoll_create __x64_sys_epoll_create |
223 | 214 64 epoll_ctl_old | 225 | 214 64 epoll_ctl_old |
224 | 215 64 epoll_wait_old | 226 | 215 64 epoll_wait_old |
225 | 216 common remap_file_pages sys_remap_file_pages | 227 | 216 common remap_file_pages __x64_sys_remap_file_pages |
226 | 217 common getdents64 sys_getdents64 | 228 | 217 common getdents64 __x64_sys_getdents64 |
227 | 218 common set_tid_address sys_set_tid_address | 229 | 218 common set_tid_address __x64_sys_set_tid_address |
228 | 219 common restart_syscall sys_restart_syscall | 230 | 219 common restart_syscall __x64_sys_restart_syscall |
229 | 220 common semtimedop sys_semtimedop | 231 | 220 common semtimedop __x64_sys_semtimedop |
230 | 221 common fadvise64 sys_fadvise64 | 232 | 221 common fadvise64 __x64_sys_fadvise64 |
231 | 222 64 timer_create sys_timer_create | 233 | 222 64 timer_create __x64_sys_timer_create |
232 | 223 common timer_settime sys_timer_settime | 234 | 223 common timer_settime __x64_sys_timer_settime |
233 | 224 common timer_gettime sys_timer_gettime | 235 | 224 common timer_gettime __x64_sys_timer_gettime |
234 | 225 common timer_getoverrun sys_timer_getoverrun | 236 | 225 common timer_getoverrun __x64_sys_timer_getoverrun |
235 | 226 common timer_delete sys_timer_delete | 237 | 226 common timer_delete __x64_sys_timer_delete |
236 | 227 common clock_settime sys_clock_settime | 238 | 227 common clock_settime __x64_sys_clock_settime |
237 | 228 common clock_gettime sys_clock_gettime | 239 | 228 common clock_gettime __x64_sys_clock_gettime |
238 | 229 common clock_getres sys_clock_getres | 240 | 229 common clock_getres __x64_sys_clock_getres |
239 | 230 common clock_nanosleep sys_clock_nanosleep | 241 | 230 common clock_nanosleep __x64_sys_clock_nanosleep |
240 | 231 common exit_group sys_exit_group | 242 | 231 common exit_group __x64_sys_exit_group |
241 | 232 common epoll_wait sys_epoll_wait | 243 | 232 common epoll_wait __x64_sys_epoll_wait |
242 | 233 common epoll_ctl sys_epoll_ctl | 244 | 233 common epoll_ctl __x64_sys_epoll_ctl |
243 | 234 common tgkill sys_tgkill | 245 | 234 common tgkill __x64_sys_tgkill |
244 | 235 common utimes sys_utimes | 246 | 235 common utimes __x64_sys_utimes |
245 | 236 64 vserver | 247 | 236 64 vserver |
246 | 237 common mbind sys_mbind | 248 | 237 common mbind __x64_sys_mbind |
247 | 238 common set_mempolicy sys_set_mempolicy | 249 | 238 common set_mempolicy __x64_sys_set_mempolicy |
248 | 239 common get_mempolicy sys_get_mempolicy | 250 | 239 common get_mempolicy __x64_sys_get_mempolicy |
249 | 240 common mq_open sys_mq_open | 251 | 240 common mq_open __x64_sys_mq_open |
250 | 241 common mq_unlink sys_mq_unlink | 252 | 241 common mq_unlink __x64_sys_mq_unlink |
251 | 242 common mq_timedsend sys_mq_timedsend | 253 | 242 common mq_timedsend __x64_sys_mq_timedsend |
252 | 243 common mq_timedreceive sys_mq_timedreceive | 254 | 243 common mq_timedreceive __x64_sys_mq_timedreceive |
253 | 244 64 mq_notify sys_mq_notify | 255 | 244 64 mq_notify __x64_sys_mq_notify |
254 | 245 common mq_getsetattr sys_mq_getsetattr | 256 | 245 common mq_getsetattr __x64_sys_mq_getsetattr |
255 | 246 64 kexec_load sys_kexec_load | 257 | 246 64 kexec_load __x64_sys_kexec_load |
256 | 247 64 waitid sys_waitid | 258 | 247 64 waitid __x64_sys_waitid |
257 | 248 common add_key sys_add_key | 259 | 248 common add_key __x64_sys_add_key |
258 | 249 common request_key sys_request_key | 260 | 249 common request_key __x64_sys_request_key |
259 | 250 common keyctl sys_keyctl | 261 | 250 common keyctl __x64_sys_keyctl |
260 | 251 common ioprio_set sys_ioprio_set | 262 | 251 common ioprio_set __x64_sys_ioprio_set |
261 | 252 common ioprio_get sys_ioprio_get | 263 | 252 common ioprio_get __x64_sys_ioprio_get |
262 | 253 common inotify_init sys_inotify_init | 264 | 253 common inotify_init __x64_sys_inotify_init |
263 | 254 common inotify_add_watch sys_inotify_add_watch | 265 | 254 common inotify_add_watch __x64_sys_inotify_add_watch |
264 | 255 common inotify_rm_watch sys_inotify_rm_watch | 266 | 255 common inotify_rm_watch __x64_sys_inotify_rm_watch |
265 | 256 common migrate_pages sys_migrate_pages | 267 | 256 common migrate_pages __x64_sys_migrate_pages |
266 | 257 common openat sys_openat | 268 | 257 common openat __x64_sys_openat |
267 | 258 common mkdirat sys_mkdirat | 269 | 258 common mkdirat __x64_sys_mkdirat |
268 | 259 common mknodat sys_mknodat | 270 | 259 common mknodat __x64_sys_mknodat |
269 | 260 common fchownat sys_fchownat | 271 | 260 common fchownat __x64_sys_fchownat |
270 | 261 common futimesat sys_futimesat | 272 | 261 common futimesat __x64_sys_futimesat |
271 | 262 common newfstatat sys_newfstatat | 273 | 262 common newfstatat __x64_sys_newfstatat |
272 | 263 common unlinkat sys_unlinkat | 274 | 263 common unlinkat __x64_sys_unlinkat |
273 | 264 common renameat sys_renameat | 275 | 264 common renameat __x64_sys_renameat |
274 | 265 common linkat sys_linkat | 276 | 265 common linkat __x64_sys_linkat |
275 | 266 common symlinkat sys_symlinkat | 277 | 266 common symlinkat __x64_sys_symlinkat |
276 | 267 common readlinkat sys_readlinkat | 278 | 267 common readlinkat __x64_sys_readlinkat |
277 | 268 common fchmodat sys_fchmodat | 279 | 268 common fchmodat __x64_sys_fchmodat |
278 | 269 common faccessat sys_faccessat | 280 | 269 common faccessat __x64_sys_faccessat |
279 | 270 common pselect6 sys_pselect6 | 281 | 270 common pselect6 __x64_sys_pselect6 |
280 | 271 common ppoll sys_ppoll | 282 | 271 common ppoll __x64_sys_ppoll |
281 | 272 common unshare sys_unshare | 283 | 272 common unshare __x64_sys_unshare |
282 | 273 64 set_robust_list sys_set_robust_list | 284 | 273 64 set_robust_list __x64_sys_set_robust_list |
283 | 274 64 get_robust_list sys_get_robust_list | 285 | 274 64 get_robust_list __x64_sys_get_robust_list |
284 | 275 common splice sys_splice | 286 | 275 common splice __x64_sys_splice |
285 | 276 common tee sys_tee | 287 | 276 common tee __x64_sys_tee |
286 | 277 common sync_file_range sys_sync_file_range | 288 | 277 common sync_file_range __x64_sys_sync_file_range |
287 | 278 64 vmsplice sys_vmsplice | 289 | 278 64 vmsplice __x64_sys_vmsplice |
288 | 279 64 move_pages sys_move_pages | 290 | 279 64 move_pages __x64_sys_move_pages |
289 | 280 common utimensat sys_utimensat | 291 | 280 common utimensat __x64_sys_utimensat |
290 | 281 common epoll_pwait sys_epoll_pwait | 292 | 281 common epoll_pwait __x64_sys_epoll_pwait |
291 | 282 common signalfd sys_signalfd | 293 | 282 common signalfd __x64_sys_signalfd |
292 | 283 common timerfd_create sys_timerfd_create | 294 | 283 common timerfd_create __x64_sys_timerfd_create |
293 | 284 common eventfd sys_eventfd | 295 | 284 common eventfd __x64_sys_eventfd |
294 | 285 common fallocate sys_fallocate | 296 | 285 common fallocate __x64_sys_fallocate |
295 | 286 common timerfd_settime sys_timerfd_settime | 297 | 286 common timerfd_settime __x64_sys_timerfd_settime |
296 | 287 common timerfd_gettime sys_timerfd_gettime | 298 | 287 common timerfd_gettime __x64_sys_timerfd_gettime |
297 | 288 common accept4 sys_accept4 | 299 | 288 common accept4 __x64_sys_accept4 |
298 | 289 common signalfd4 sys_signalfd4 | 300 | 289 common signalfd4 __x64_sys_signalfd4 |
299 | 290 common eventfd2 sys_eventfd2 | 301 | 290 common eventfd2 __x64_sys_eventfd2 |
300 | 291 common epoll_create1 sys_epoll_create1 | 302 | 291 common epoll_create1 __x64_sys_epoll_create1 |
301 | 292 common dup3 sys_dup3 | 303 | 292 common dup3 __x64_sys_dup3 |
302 | 293 common pipe2 sys_pipe2 | 304 | 293 common pipe2 __x64_sys_pipe2 |
303 | 294 common inotify_init1 sys_inotify_init1 | 305 | 294 common inotify_init1 __x64_sys_inotify_init1 |
304 | 295 64 preadv sys_preadv | 306 | 295 64 preadv __x64_sys_preadv |
305 | 296 64 pwritev sys_pwritev | 307 | 296 64 pwritev __x64_sys_pwritev |
306 | 297 64 rt_tgsigqueueinfo sys_rt_tgsigqueueinfo | 308 | 297 64 rt_tgsigqueueinfo __x64_sys_rt_tgsigqueueinfo |
307 | 298 common perf_event_open sys_perf_event_open | 309 | 298 common perf_event_open __x64_sys_perf_event_open |
308 | 299 64 recvmmsg sys_recvmmsg | 310 | 299 64 recvmmsg __x64_sys_recvmmsg |
309 | 300 common fanotify_init sys_fanotify_init | 311 | 300 common fanotify_init __x64_sys_fanotify_init |
310 | 301 common fanotify_mark sys_fanotify_mark | 312 | 301 common fanotify_mark __x64_sys_fanotify_mark |
311 | 302 common prlimit64 sys_prlimit64 | 313 | 302 common prlimit64 __x64_sys_prlimit64 |
312 | 303 common name_to_handle_at sys_name_to_handle_at | 314 | 303 common name_to_handle_at __x64_sys_name_to_handle_at |
313 | 304 common open_by_handle_at sys_open_by_handle_at | 315 | 304 common open_by_handle_at __x64_sys_open_by_handle_at |
314 | 305 common clock_adjtime sys_clock_adjtime | 316 | 305 common clock_adjtime __x64_sys_clock_adjtime |
315 | 306 common syncfs sys_syncfs | 317 | 306 common syncfs __x64_sys_syncfs |
316 | 307 64 sendmmsg sys_sendmmsg | 318 | 307 64 sendmmsg __x64_sys_sendmmsg |
317 | 308 common setns sys_setns | 319 | 308 common setns __x64_sys_setns |
318 | 309 common getcpu sys_getcpu | 320 | 309 common getcpu __x64_sys_getcpu |
319 | 310 64 process_vm_readv sys_process_vm_readv | 321 | 310 64 process_vm_readv __x64_sys_process_vm_readv |
320 | 311 64 process_vm_writev sys_process_vm_writev | 322 | 311 64 process_vm_writev __x64_sys_process_vm_writev |
321 | 312 common kcmp sys_kcmp | 323 | 312 common kcmp __x64_sys_kcmp |
322 | 313 common finit_module sys_finit_module | 324 | 313 common finit_module __x64_sys_finit_module |
323 | 314 common sched_setattr sys_sched_setattr | 325 | 314 common sched_setattr __x64_sys_sched_setattr |
324 | 315 common sched_getattr sys_sched_getattr | 326 | 315 common sched_getattr __x64_sys_sched_getattr |
325 | 316 common renameat2 sys_renameat2 | 327 | 316 common renameat2 __x64_sys_renameat2 |
326 | 317 common seccomp sys_seccomp | 328 | 317 common seccomp __x64_sys_seccomp |
327 | 318 common getrandom sys_getrandom | 329 | 318 common getrandom __x64_sys_getrandom |
328 | 319 common memfd_create sys_memfd_create | 330 | 319 common memfd_create __x64_sys_memfd_create |
329 | 320 common kexec_file_load sys_kexec_file_load | 331 | 320 common kexec_file_load __x64_sys_kexec_file_load |
330 | 321 common bpf sys_bpf | 332 | 321 common bpf __x64_sys_bpf |
331 | 322 64 execveat sys_execveat/ptregs | 333 | 322 64 execveat __x64_sys_execveat/ptregs |
332 | 323 common userfaultfd sys_userfaultfd | 334 | 323 common userfaultfd __x64_sys_userfaultfd |
333 | 324 common membarrier sys_membarrier | 335 | 324 common membarrier __x64_sys_membarrier |
334 | 325 common mlock2 sys_mlock2 | 336 | 325 common mlock2 __x64_sys_mlock2 |
335 | 326 common copy_file_range sys_copy_file_range | 337 | 326 common copy_file_range __x64_sys_copy_file_range |
336 | 327 64 preadv2 sys_preadv2 | 338 | 327 64 preadv2 __x64_sys_preadv2 |
337 | 328 64 pwritev2 sys_pwritev2 | 339 | 328 64 pwritev2 __x64_sys_pwritev2 |
338 | 329 common pkey_mprotect sys_pkey_mprotect | 340 | 329 common pkey_mprotect __x64_sys_pkey_mprotect |
339 | 330 common pkey_alloc sys_pkey_alloc | 341 | 330 common pkey_alloc __x64_sys_pkey_alloc |
340 | 331 common pkey_free sys_pkey_free | 342 | 331 common pkey_free __x64_sys_pkey_free |
341 | 332 common statx sys_statx | 343 | 332 common statx __x64_sys_statx |
342 | 344 | ||
343 | # | 345 | # |
344 | # x32-specific system call numbers start at 512 to avoid cache impact | 346 | # x32-specific system call numbers start at 512 to avoid cache impact |
diff --git a/arch/x86/entry/syscalls/syscalltbl.sh b/arch/x86/entry/syscalls/syscalltbl.sh index d71ef4bd3615..94fcd1951aca 100644 --- a/arch/x86/entry/syscalls/syscalltbl.sh +++ b/arch/x86/entry/syscalls/syscalltbl.sh | |||
@@ -25,15 +25,27 @@ emit() { | |||
25 | nr="$2" | 25 | nr="$2" |
26 | entry="$3" | 26 | entry="$3" |
27 | compat="$4" | 27 | compat="$4" |
28 | umlentry="" | ||
28 | 29 | ||
29 | if [ "$abi" = "64" -a -n "$compat" ]; then | 30 | if [ "$abi" = "64" -a -n "$compat" ]; then |
30 | echo "a compat entry for a 64-bit syscall makes no sense" >&2 | 31 | echo "a compat entry for a 64-bit syscall makes no sense" >&2 |
31 | exit 1 | 32 | exit 1 |
32 | fi | 33 | fi |
33 | 34 | ||
35 | # For CONFIG_UML, we need to strip the __x64_sys prefix | ||
36 | if [ "$abi" = "64" -a "${entry}" != "${entry#__x64_sys}" ]; then | ||
37 | umlentry="sys${entry#__x64_sys}" | ||
38 | fi | ||
39 | |||
34 | if [ -z "$compat" ]; then | 40 | if [ -z "$compat" ]; then |
35 | if [ -n "$entry" ]; then | 41 | if [ -n "$entry" -a -z "$umlentry" ]; then |
36 | syscall_macro "$abi" "$nr" "$entry" | 42 | syscall_macro "$abi" "$nr" "$entry" |
43 | elif [ -n "$umlentry" ]; then # implies -n "$entry" | ||
44 | echo "#ifdef CONFIG_X86" | ||
45 | syscall_macro "$abi" "$nr" "$entry" | ||
46 | echo "#else /* CONFIG_UML */" | ||
47 | syscall_macro "$abi" "$nr" "$umlentry" | ||
48 | echo "#endif" | ||
37 | fi | 49 | fi |
38 | else | 50 | else |
39 | echo "#ifdef CONFIG_X86_32" | 51 | echo "#ifdef CONFIG_X86_32" |
diff --git a/arch/x86/entry/vsyscall/vsyscall_64.c b/arch/x86/entry/vsyscall/vsyscall_64.c index 20b3d4a88ee4..70b7845434cb 100644 --- a/arch/x86/entry/vsyscall/vsyscall_64.c +++ b/arch/x86/entry/vsyscall/vsyscall_64.c | |||
@@ -229,12 +229,12 @@ bool emulate_vsyscall(struct pt_regs *regs, unsigned long address) | |||
229 | switch (vsyscall_nr) { | 229 | switch (vsyscall_nr) { |
230 | case 0: | 230 | case 0: |
231 | /* this decodes regs->di and regs->si on its own */ | 231 | /* this decodes regs->di and regs->si on its own */ |
232 | ret = sys_gettimeofday(regs); | 232 | ret = __x64_sys_gettimeofday(regs); |
233 | break; | 233 | break; |
234 | 234 | ||
235 | case 1: | 235 | case 1: |
236 | /* this decodes regs->di on its own */ | 236 | /* this decodes regs->di on its own */ |
237 | ret = sys_time(regs); | 237 | ret = __x64_sys_time(regs); |
238 | break; | 238 | break; |
239 | 239 | ||
240 | case 2: | 240 | case 2: |
@@ -242,7 +242,7 @@ bool emulate_vsyscall(struct pt_regs *regs, unsigned long address) | |||
242 | orig_dx = regs->dx; | 242 | orig_dx = regs->dx; |
243 | regs->dx = 0; | 243 | regs->dx = 0; |
244 | /* this decodes regs->di, regs->si and regs->dx on its own */ | 244 | /* this decodes regs->di, regs->si and regs->dx on its own */ |
245 | ret = sys_getcpu(regs); | 245 | ret = __x64_sys_getcpu(regs); |
246 | regs->dx = orig_dx; | 246 | regs->dx = orig_dx; |
247 | break; | 247 | break; |
248 | } | 248 | } |
diff --git a/arch/x86/include/asm/syscall_wrapper.h b/arch/x86/include/asm/syscall_wrapper.h index 8d0951cfc2d4..a598013e08e9 100644 --- a/arch/x86/include/asm/syscall_wrapper.h +++ b/arch/x86/include/asm/syscall_wrapper.h | |||
@@ -44,12 +44,23 @@ | |||
44 | return __se_sys##name(SC_IA32_REGS_TO_ARGS(x,__VA_ARGS__));\ | 44 | return __se_sys##name(SC_IA32_REGS_TO_ARGS(x,__VA_ARGS__));\ |
45 | } | 45 | } |
46 | 46 | ||
47 | /* | ||
48 | * To keep the naming coherent, re-define SYSCALL_DEFINE0 to create an alias | ||
49 | * named __ia32_sys_*() | ||
50 | */ | ||
51 | #define SYSCALL_DEFINE0(sname) \ | ||
52 | SYSCALL_METADATA(_##sname, 0); \ | ||
53 | asmlinkage long __x64_sys_##sname(void); \ | ||
54 | ALLOW_ERROR_INJECTION(__x64_sys_##sname, ERRNO); \ | ||
55 | SYSCALL_ALIAS(__ia32_sys_##sname, __x64_sys_##sname); \ | ||
56 | asmlinkage long __x64_sys_##sname(void) | ||
57 | |||
47 | #define COND_SYSCALL(name) \ | 58 | #define COND_SYSCALL(name) \ |
48 | cond_syscall(sys_##name); \ | 59 | cond_syscall(__x64_sys_##name); \ |
49 | cond_syscall(__ia32_sys_##name) | 60 | cond_syscall(__ia32_sys_##name) |
50 | 61 | ||
51 | #define SYS_NI(name) \ | 62 | #define SYS_NI(name) \ |
52 | SYSCALL_ALIAS(sys_##name, sys_ni_posix_timers); \ | 63 | SYSCALL_ALIAS(__x64_sys_##name, sys_ni_posix_timers); \ |
53 | SYSCALL_ALIAS(__ia32_sys_##name, sys_ni_posix_timers) | 64 | SYSCALL_ALIAS(__ia32_sys_##name, sys_ni_posix_timers) |
54 | 65 | ||
55 | #else /* CONFIG_IA32_EMULATION */ | 66 | #else /* CONFIG_IA32_EMULATION */ |
@@ -81,8 +92,7 @@ | |||
81 | /* | 92 | /* |
82 | * Compat means IA32_EMULATION and/or X86_X32. As they use a different | 93 | * Compat means IA32_EMULATION and/or X86_X32. As they use a different |
83 | * mapping of registers to parameters, we need to generate stubs for each | 94 | * mapping of registers to parameters, we need to generate stubs for each |
84 | * of them. There is no need to implement COMPAT_SYSCALL_DEFINE0, as it is | 95 | * of them. |
85 | * unused on x86. | ||
86 | */ | 96 | */ |
87 | #define COMPAT_SYSCALL_DEFINEx(x, name, ...) \ | 97 | #define COMPAT_SYSCALL_DEFINEx(x, name, ...) \ |
88 | static long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \ | 98 | static long __se_compat_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \ |
@@ -114,13 +124,13 @@ | |||
114 | /* | 124 | /* |
115 | * Instead of the generic __SYSCALL_DEFINEx() definition, this macro takes | 125 | * Instead of the generic __SYSCALL_DEFINEx() definition, this macro takes |
116 | * struct pt_regs *regs as the only argument of the syscall stub named | 126 | * struct pt_regs *regs as the only argument of the syscall stub named |
117 | * sys_*(). It decodes just the registers it needs and passes them on to | 127 | * __x64_sys_*(). It decodes just the registers it needs and passes them on to |
118 | * the __se_sys_*() wrapper performing sign extension and then to the | 128 | * the __se_sys_*() wrapper performing sign extension and then to the |
119 | * __do_sys_*() function doing the actual job. These wrappers and functions | 129 | * __do_sys_*() function doing the actual job. These wrappers and functions |
120 | * are inlined (at least in very most cases), meaning that the assembly looks | 130 | * are inlined (at least in very most cases), meaning that the assembly looks |
121 | * as follows (slightly re-ordered for better readability): | 131 | * as follows (slightly re-ordered for better readability): |
122 | * | 132 | * |
123 | * <sys_recv>: <-- syscall with 4 parameters | 133 | * <__x64_sys_recv>: <-- syscall with 4 parameters |
124 | * callq <__fentry__> | 134 | * callq <__fentry__> |
125 | * | 135 | * |
126 | * mov 0x70(%rdi),%rdi <-- decode regs->di | 136 | * mov 0x70(%rdi),%rdi <-- decode regs->di |
@@ -143,18 +153,13 @@ | |||
143 | * If IA32_EMULATION is enabled, this macro generates an additional wrapper | 153 | * If IA32_EMULATION is enabled, this macro generates an additional wrapper |
144 | * named __ia32_sys_*() which decodes the struct pt_regs *regs according | 154 | * named __ia32_sys_*() which decodes the struct pt_regs *regs according |
145 | * to the i386 calling convention (bx, cx, dx, si, di, bp). | 155 | * to the i386 calling convention (bx, cx, dx, si, di, bp). |
146 | * | ||
147 | * As the generic SYSCALL_DEFINE0() macro does not decode any parameters for | ||
148 | * obvious reasons, and passing struct pt_regs *regs to it in %rdi does not | ||
149 | * hurt, there is no need to override it, or to define it differently for | ||
150 | * IA32_EMULATION. | ||
151 | */ | 156 | */ |
152 | #define __SYSCALL_DEFINEx(x, name, ...) \ | 157 | #define __SYSCALL_DEFINEx(x, name, ...) \ |
153 | asmlinkage long sys##name(const struct pt_regs *regs); \ | 158 | asmlinkage long __x64_sys##name(const struct pt_regs *regs); \ |
154 | ALLOW_ERROR_INJECTION(sys##name, ERRNO); \ | 159 | ALLOW_ERROR_INJECTION(__x64_sys##name, ERRNO); \ |
155 | static long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \ | 160 | static long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \ |
156 | static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\ | 161 | static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\ |
157 | asmlinkage long sys##name(const struct pt_regs *regs) \ | 162 | asmlinkage long __x64_sys##name(const struct pt_regs *regs) \ |
158 | { \ | 163 | { \ |
159 | return __se_sys##name(SC_X86_64_REGS_TO_ARGS(x,__VA_ARGS__));\ | 164 | return __se_sys##name(SC_X86_64_REGS_TO_ARGS(x,__VA_ARGS__));\ |
160 | } \ | 165 | } \ |
@@ -169,12 +174,36 @@ | |||
169 | static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) | 174 | static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) |
170 | 175 | ||
171 | /* | 176 | /* |
177 | * As the generic SYSCALL_DEFINE0() macro does not decode any parameters for | ||
178 | * obvious reasons, and passing struct pt_regs *regs to it in %rdi does not | ||
179 | * hurt, we only need to re-define it here to keep the naming congruent to | ||
180 | * SYSCALL_DEFINEx() -- which is essential for the COND_SYSCALL() and SYS_NI() | ||
181 | * macros to work correctly. | ||
182 | */ | ||
183 | #ifndef SYSCALL_DEFINE0 | ||
184 | #define SYSCALL_DEFINE0(sname) \ | ||
185 | SYSCALL_METADATA(_##sname, 0); \ | ||
186 | asmlinkage long __x64_sys_##sname(void); \ | ||
187 | ALLOW_ERROR_INJECTION(__x64_sys_##sname, ERRNO); \ | ||
188 | asmlinkage long __x64_sys_##sname(void) | ||
189 | #endif | ||
190 | |||
191 | #ifndef COND_SYSCALL | ||
192 | #define COND_SYSCALL(name) cond_syscall(__x64_sys_##name) | ||
193 | #endif | ||
194 | |||
195 | #ifndef SYS_NI | ||
196 | #define SYS_NI(name) SYSCALL_ALIAS(__x64_sys_##name, sys_ni_posix_timers); | ||
197 | #endif | ||
198 | |||
199 | |||
200 | /* | ||
172 | * For VSYSCALLS, we need to declare these three syscalls with the new | 201 | * For VSYSCALLS, we need to declare these three syscalls with the new |
173 | * pt_regs-based calling convention for in-kernel use. | 202 | * pt_regs-based calling convention for in-kernel use. |
174 | */ | 203 | */ |
175 | struct pt_regs; | 204 | struct pt_regs; |
176 | asmlinkage long sys_getcpu(const struct pt_regs *regs); /* di,si,dx */ | 205 | asmlinkage long __x64_sys_getcpu(const struct pt_regs *regs); |
177 | asmlinkage long sys_gettimeofday(const struct pt_regs *regs); /* di,si */ | 206 | asmlinkage long __x64_sys_gettimeofday(const struct pt_regs *regs); |
178 | asmlinkage long sys_time(const struct pt_regs *regs); /* di */ | 207 | asmlinkage long __x64_sys_time(const struct pt_regs *regs); |
179 | 208 | ||
180 | #endif /* _ASM_X86_SYSCALL_WRAPPER_H */ | 209 | #endif /* _ASM_X86_SYSCALL_WRAPPER_H */ |