1 # SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note
3 # 64-bit system call numbers and entry vectors
6 # <number> <abi> <name> <entry point> [<compat entry point> [noreturn]]
8 # The __x64_sys_*() stubs are created on-the-fly for sys_*() system calls
10 # The abi is "common", "64" or "x32" for this file.
12 0 common read sys_read
13 1 common write sys_write
14 2 common open sys_open
15 3 common close sys_close
16 4 common stat sys_newstat
17 5 common fstat sys_newfstat
18 6 common lstat sys_newlstat
19 7 common poll sys_poll
20 8 common lseek sys_lseek
21 9 common mmap sys_mmap
22 10 common mprotect sys_mprotect
23 11 common munmap sys_munmap
25 13 64 rt_sigaction sys_rt_sigaction
26 14 common rt_sigprocmask sys_rt_sigprocmask
27 15 64 rt_sigreturn sys_rt_sigreturn
29 17 common pread64 sys_pread64
30 18 common pwrite64 sys_pwrite64
32 20 64 writev sys_writev
33 21 common access sys_access
34 22 common pipe sys_pipe
35 23 common select sys_select
36 24 common sched_yield sys_sched_yield
37 25 common mremap sys_mremap
38 26 common msync sys_msync
39 27 common mincore sys_mincore
40 28 common madvise sys_madvise
41 29 common shmget sys_shmget
42 30 common shmat sys_shmat
43 31 common shmctl sys_shmctl
45 33 common dup2 sys_dup2
46 34 common pause sys_pause
47 35 common nanosleep sys_nanosleep
48 36 common getitimer sys_getitimer
49 37 common alarm sys_alarm
50 38 common setitimer sys_setitimer
51 39 common getpid sys_getpid
52 40 common sendfile sys_sendfile64
53 41 common socket sys_socket
54 42 common connect sys_connect
55 43 common accept sys_accept
56 44 common sendto sys_sendto
57 45 64 recvfrom sys_recvfrom
58 46 64 sendmsg sys_sendmsg
59 47 64 recvmsg sys_recvmsg
60 48 common shutdown sys_shutdown
61 49 common bind sys_bind
62 50 common listen sys_listen
63 51 common getsockname sys_getsockname
64 52 common getpeername sys_getpeername
65 53 common socketpair sys_socketpair
66 54 64 setsockopt sys_setsockopt
67 55 64 getsockopt sys_getsockopt
68 56 common clone sys_clone
69 57 common fork sys_fork
70 58 common vfork sys_vfork
71 59 64 execve sys_execve
72 60 common exit sys_exit - noreturn
73 61 common wait4 sys_wait4
74 62 common kill sys_kill
75 63 common uname sys_newuname
76 64 common semget sys_semget
77 65 common semop sys_semop
78 66 common semctl sys_semctl
79 67 common shmdt sys_shmdt
80 68 common msgget sys_msgget
81 69 common msgsnd sys_msgsnd
82 70 common msgrcv sys_msgrcv
83 71 common msgctl sys_msgctl
84 72 common fcntl sys_fcntl
85 73 common flock sys_flock
86 74 common fsync sys_fsync
87 75 common fdatasync sys_fdatasync
88 76 common truncate sys_truncate
89 77 common ftruncate sys_ftruncate
90 78 common getdents sys_getdents
91 79 common getcwd sys_getcwd
92 80 common chdir sys_chdir
93 81 common fchdir sys_fchdir
94 82 common rename sys_rename
95 83 common mkdir sys_mkdir
96 84 common rmdir sys_rmdir
97 85 common creat sys_creat
98 86 common link sys_link
99 87 common unlink sys_unlink
100 88 common symlink sys_symlink
101 89 common readlink sys_readlink
102 90 common chmod sys_chmod
103 91 common fchmod sys_fchmod
104 92 common chown sys_chown
105 93 common fchown sys_fchown
106 94 common lchown sys_lchown
107 95 common umask sys_umask
108 96 common gettimeofday sys_gettimeofday
109 97 common getrlimit sys_getrlimit
110 98 common getrusage sys_getrusage
111 99 common sysinfo sys_sysinfo
112 100 common times sys_times
113 101 64 ptrace sys_ptrace
114 102 common getuid sys_getuid
115 103 common syslog sys_syslog
116 104 common getgid sys_getgid
117 105 common setuid sys_setuid
118 106 common setgid sys_setgid
119 107 common geteuid sys_geteuid
120 108 common getegid sys_getegid
121 109 common setpgid sys_setpgid
122 110 common getppid sys_getppid
123 111 common getpgrp sys_getpgrp
124 112 common setsid sys_setsid
125 113 common setreuid sys_setreuid
126 114 common setregid sys_setregid
127 115 common getgroups sys_getgroups
128 116 common setgroups sys_setgroups
129 117 common setresuid sys_setresuid
130 118 common getresuid sys_getresuid
131 119 common setresgid sys_setresgid
132 120 common getresgid sys_getresgid
133 121 common getpgid sys_getpgid
134 122 common setfsuid sys_setfsuid
135 123 common setfsgid sys_setfsgid
136 124 common getsid sys_getsid
137 125 common capget sys_capget
138 126 common capset sys_capset
139 127 64 rt_sigpending sys_rt_sigpending
140 128 64 rt_sigtimedwait sys_rt_sigtimedwait
141 129 64 rt_sigqueueinfo sys_rt_sigqueueinfo
142 130 common rt_sigsuspend sys_rt_sigsuspend
143 131 64 sigaltstack sys_sigaltstack
144 132 common utime sys_utime
145 133 common mknod sys_mknod
147 135 common personality sys_personality
148 136 common ustat sys_ustat
149 137 common statfs sys_statfs
150 138 common fstatfs sys_fstatfs
151 139 common sysfs sys_sysfs
152 140 common getpriority sys_getpriority
153 141 common setpriority sys_setpriority
154 142 common sched_setparam sys_sched_setparam
155 143 common sched_getparam sys_sched_getparam
156 144 common sched_setscheduler sys_sched_setscheduler
157 145 common sched_getscheduler sys_sched_getscheduler
158 146 common sched_get_priority_max sys_sched_get_priority_max
159 147 common sched_get_priority_min sys_sched_get_priority_min
160 148 common sched_rr_get_interval sys_sched_rr_get_interval
161 149 common mlock sys_mlock
162 150 common munlock sys_munlock
163 151 common mlockall sys_mlockall
164 152 common munlockall sys_munlockall
165 153 common vhangup sys_vhangup
166 154 common modify_ldt sys_modify_ldt
167 155 common pivot_root sys_pivot_root
168 156 64 _sysctl sys_ni_syscall
169 157 common prctl sys_prctl
170 158 common arch_prctl sys_arch_prctl
171 159 common adjtimex sys_adjtimex
172 160 common setrlimit sys_setrlimit
173 161 common chroot sys_chroot
174 162 common sync sys_sync
175 163 common acct sys_acct
176 164 common settimeofday sys_settimeofday
177 165 common mount sys_mount
178 166 common umount2 sys_umount
179 167 common swapon sys_swapon
180 168 common swapoff sys_swapoff
181 169 common reboot sys_reboot
182 170 common sethostname sys_sethostname
183 171 common setdomainname sys_setdomainname
184 172 common iopl sys_iopl
185 173 common ioperm sys_ioperm
187 175 common init_module sys_init_module
188 176 common delete_module sys_delete_module
189 177 64 get_kernel_syms
191 179 common quotactl sys_quotactl
195 183 common afs_syscall
198 186 common gettid sys_gettid
199 187 common readahead sys_readahead
200 188 common setxattr sys_setxattr
201 189 common lsetxattr sys_lsetxattr
202 190 common fsetxattr sys_fsetxattr
203 191 common getxattr sys_getxattr
204 192 common lgetxattr sys_lgetxattr
205 193 common fgetxattr sys_fgetxattr
206 194 common listxattr sys_listxattr
207 195 common llistxattr sys_llistxattr
208 196 common flistxattr sys_flistxattr
209 197 common removexattr sys_removexattr
210 198 common lremovexattr sys_lremovexattr
211 199 common fremovexattr sys_fremovexattr
212 200 common tkill sys_tkill
213 201 common time sys_time
214 202 common futex sys_futex
215 203 common sched_setaffinity sys_sched_setaffinity
216 204 common sched_getaffinity sys_sched_getaffinity
217 205 64 set_thread_area
218 206 64 io_setup sys_io_setup
219 207 common io_destroy sys_io_destroy
220 208 common io_getevents sys_io_getevents
221 209 64 io_submit sys_io_submit
222 210 common io_cancel sys_io_cancel
223 211 64 get_thread_area
224 212 common lookup_dcookie
225 213 common epoll_create sys_epoll_create
227 215 64 epoll_wait_old
228 216 common remap_file_pages sys_remap_file_pages
229 217 common getdents64 sys_getdents64
230 218 common set_tid_address sys_set_tid_address
231 219 common restart_syscall sys_restart_syscall
232 220 common semtimedop sys_semtimedop
233 221 common fadvise64 sys_fadvise64
234 222 64 timer_create sys_timer_create
235 223 common timer_settime sys_timer_settime
236 224 common timer_gettime sys_timer_gettime
237 225 common timer_getoverrun sys_timer_getoverrun
238 226 common timer_delete sys_timer_delete
239 227 common clock_settime sys_clock_settime
240 228 common clock_gettime sys_clock_gettime
241 229 common clock_getres sys_clock_getres
242 230 common clock_nanosleep sys_clock_nanosleep
243 231 common exit_group sys_exit_group - noreturn
244 232 common epoll_wait sys_epoll_wait
245 233 common epoll_ctl sys_epoll_ctl
246 234 common tgkill sys_tgkill
247 235 common utimes sys_utimes
249 237 common mbind sys_mbind
250 238 common set_mempolicy sys_set_mempolicy
251 239 common get_mempolicy sys_get_mempolicy
252 240 common mq_open sys_mq_open
253 241 common mq_unlink sys_mq_unlink
254 242 common mq_timedsend sys_mq_timedsend
255 243 common mq_timedreceive sys_mq_timedreceive
256 244 64 mq_notify sys_mq_notify
257 245 common mq_getsetattr sys_mq_getsetattr
258 246 64 kexec_load sys_kexec_load
259 247 64 waitid sys_waitid
260 248 common add_key sys_add_key
261 249 common request_key sys_request_key
262 250 common keyctl sys_keyctl
263 251 common ioprio_set sys_ioprio_set
264 252 common ioprio_get sys_ioprio_get
265 253 common inotify_init sys_inotify_init
266 254 common inotify_add_watch sys_inotify_add_watch
267 255 common inotify_rm_watch sys_inotify_rm_watch
268 256 common migrate_pages sys_migrate_pages
269 257 common openat sys_openat
270 258 common mkdirat sys_mkdirat
271 259 common mknodat sys_mknodat
272 260 common fchownat sys_fchownat
273 261 common futimesat sys_futimesat
274 262 common newfstatat sys_newfstatat
275 263 common unlinkat sys_unlinkat
276 264 common renameat sys_renameat
277 265 common linkat sys_linkat
278 266 common symlinkat sys_symlinkat
279 267 common readlinkat sys_readlinkat
280 268 common fchmodat sys_fchmodat
281 269 common faccessat sys_faccessat
282 270 common pselect6 sys_pselect6
283 271 common ppoll sys_ppoll
284 272 common unshare sys_unshare
285 273 64 set_robust_list sys_set_robust_list
286 274 64 get_robust_list sys_get_robust_list
287 275 common splice sys_splice
288 276 common tee sys_tee
289 277 common sync_file_range sys_sync_file_range
290 278 64 vmsplice sys_vmsplice
291 279 64 move_pages sys_move_pages
292 280 common utimensat sys_utimensat
293 281 common epoll_pwait sys_epoll_pwait
294 282 common signalfd sys_signalfd
295 283 common timerfd_create sys_timerfd_create
296 284 common eventfd sys_eventfd
297 285 common fallocate sys_fallocate
298 286 common timerfd_settime sys_timerfd_settime
299 287 common timerfd_gettime sys_timerfd_gettime
300 288 common accept4 sys_accept4
301 289 common signalfd4 sys_signalfd4
302 290 common eventfd2 sys_eventfd2
303 291 common epoll_create1 sys_epoll_create1
304 292 common dup3 sys_dup3
305 293 common pipe2 sys_pipe2
306 294 common inotify_init1 sys_inotify_init1
307 295 64 preadv sys_preadv
308 296 64 pwritev sys_pwritev
309 297 64 rt_tgsigqueueinfo sys_rt_tgsigqueueinfo
310 298 common perf_event_open sys_perf_event_open
311 299 64 recvmmsg sys_recvmmsg
312 300 common fanotify_init sys_fanotify_init
313 301 common fanotify_mark sys_fanotify_mark
314 302 common prlimit64 sys_prlimit64
315 303 common name_to_handle_at sys_name_to_handle_at
316 304 common open_by_handle_at sys_open_by_handle_at
317 305 common clock_adjtime sys_clock_adjtime
318 306 common syncfs sys_syncfs
319 307 64 sendmmsg sys_sendmmsg
320 308 common setns sys_setns
321 309 common getcpu sys_getcpu
322 310 64 process_vm_readv sys_process_vm_readv
323 311 64 process_vm_writev sys_process_vm_writev
324 312 common kcmp sys_kcmp
325 313 common finit_module sys_finit_module
326 314 common sched_setattr sys_sched_setattr
327 315 common sched_getattr sys_sched_getattr
328 316 common renameat2 sys_renameat2
329 317 common seccomp sys_seccomp
330 318 common getrandom sys_getrandom
331 319 common memfd_create sys_memfd_create
332 320 common kexec_file_load sys_kexec_file_load
333 321 common bpf sys_bpf
334 322 64 execveat sys_execveat
335 323 common userfaultfd sys_userfaultfd
336 324 common membarrier sys_membarrier
337 325 common mlock2 sys_mlock2
338 326 common copy_file_range sys_copy_file_range
339 327 64 preadv2 sys_preadv2
340 328 64 pwritev2 sys_pwritev2
341 329 common pkey_mprotect sys_pkey_mprotect
342 330 common pkey_alloc sys_pkey_alloc
343 331 common pkey_free sys_pkey_free
344 332 common statx sys_statx
345 333 common io_pgetevents sys_io_pgetevents
346 334 common rseq sys_rseq
347 335 common uretprobe sys_uretprobe
348 # don't use numbers 387 through 423, add new calls after the last
350 424 common pidfd_send_signal sys_pidfd_send_signal
351 425 common io_uring_setup sys_io_uring_setup
352 426 common io_uring_enter sys_io_uring_enter
353 427 common io_uring_register sys_io_uring_register
354 428 common open_tree sys_open_tree
355 429 common move_mount sys_move_mount
356 430 common fsopen sys_fsopen
357 431 common fsconfig sys_fsconfig
358 432 common fsmount sys_fsmount
359 433 common fspick sys_fspick
360 434 common pidfd_open sys_pidfd_open
361 435 common clone3 sys_clone3
362 436 common close_range sys_close_range
363 437 common openat2 sys_openat2
364 438 common pidfd_getfd sys_pidfd_getfd
365 439 common faccessat2 sys_faccessat2
366 440 common process_madvise sys_process_madvise
367 441 common epoll_pwait2 sys_epoll_pwait2
368 442 common mount_setattr sys_mount_setattr
369 443 common quotactl_fd sys_quotactl_fd
370 444 common landlock_create_ruleset sys_landlock_create_ruleset
371 445 common landlock_add_rule sys_landlock_add_rule
372 446 common landlock_restrict_self sys_landlock_restrict_self
373 447 common memfd_secret sys_memfd_secret
374 448 common process_mrelease sys_process_mrelease
375 449 common futex_waitv sys_futex_waitv
376 450 common set_mempolicy_home_node sys_set_mempolicy_home_node
377 451 common cachestat sys_cachestat
378 452 common fchmodat2 sys_fchmodat2
379 453 common map_shadow_stack sys_map_shadow_stack
380 454 common futex_wake sys_futex_wake
381 455 common futex_wait sys_futex_wait
382 456 common futex_requeue sys_futex_requeue
383 457 common statmount sys_statmount
384 458 common listmount sys_listmount
385 459 common lsm_get_self_attr sys_lsm_get_self_attr
386 460 common lsm_set_self_attr sys_lsm_set_self_attr
387 461 common lsm_list_modules sys_lsm_list_modules
388 462 common mseal sys_mseal
391 # Due to a historical design error, certain syscalls are numbered differently
392 # in x32 as compared to native x86_64. These syscalls have numbers 512-547.
393 # Do not add new syscalls to this range. Numbers 548 and above are available
396 512 x32 rt_sigaction compat_sys_rt_sigaction
397 513 x32 rt_sigreturn compat_sys_x32_rt_sigreturn
398 514 x32 ioctl compat_sys_ioctl
399 515 x32 readv sys_readv
400 516 x32 writev sys_writev
401 517 x32 recvfrom compat_sys_recvfrom
402 518 x32 sendmsg compat_sys_sendmsg
403 519 x32 recvmsg compat_sys_recvmsg
404 520 x32 execve compat_sys_execve
405 521 x32 ptrace compat_sys_ptrace
406 522 x32 rt_sigpending compat_sys_rt_sigpending
407 523 x32 rt_sigtimedwait compat_sys_rt_sigtimedwait_time64
408 524 x32 rt_sigqueueinfo compat_sys_rt_sigqueueinfo
409 525 x32 sigaltstack compat_sys_sigaltstack
410 526 x32 timer_create compat_sys_timer_create
411 527 x32 mq_notify compat_sys_mq_notify
412 528 x32 kexec_load compat_sys_kexec_load
413 529 x32 waitid compat_sys_waitid
414 530 x32 set_robust_list compat_sys_set_robust_list
415 531 x32 get_robust_list compat_sys_get_robust_list
416 532 x32 vmsplice sys_vmsplice
417 533 x32 move_pages sys_move_pages
418 534 x32 preadv compat_sys_preadv64
419 535 x32 pwritev compat_sys_pwritev64
420 536 x32 rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo
421 537 x32 recvmmsg compat_sys_recvmmsg_time64
422 538 x32 sendmmsg compat_sys_sendmmsg
423 539 x32 process_vm_readv sys_process_vm_readv
424 540 x32 process_vm_writev sys_process_vm_writev
425 541 x32 setsockopt sys_setsockopt
426 542 x32 getsockopt sys_getsockopt
427 543 x32 io_setup compat_sys_io_setup
428 544 x32 io_submit compat_sys_io_submit
429 545 x32 execveat compat_sys_execveat
430 546 x32 preadv2 compat_sys_preadv64v2
431 547 x32 pwritev2 compat_sys_pwritev64v2
432 # This is the end of the legacy x32 range. Numbers 548 and above are
433 # not special and are not to be used for x32-specific syscalls.