diff options
| author | Arnd Bergmann <arnd@arndb.de> | 2019-02-18 11:30:06 -0500 |
|---|---|---|
| committer | Arnd Bergmann <arnd@arndb.de> | 2019-02-19 15:27:32 -0500 |
| commit | c8ce48f06503eee20f189eed5b2aa736272b7344 (patch) | |
| tree | 6da73bd0e00d4b3f0dea996dca4e23446851794c | |
| parent | 80d7da1cac62f28b3df4880e8143b39cabb4b59a (diff) | |
asm-generic: Make time32 syscall numbers optional
We don't want new architectures to even provide the old 32-bit time_t
based system calls any more, or define the syscall number macros.
Add a new __ARCH_WANT_TIME32_SYSCALLS macro that gets enabled for all
existing 32-bit architectures using the generic system call table,
so we don't change any current behavior.
Since this symbol is evaluated in user space as well, we cannot use
a Kconfig CONFIG_* macro but have to define it in uapi/asm/unistd.h.
On 64-bit architectures, the same system call numbers mostly refer to
the system calls we want to keep, as they already pass 64-bit time_t.
As new architectures no longer provide these, we need new exceptions
in checksyscalls.sh.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| -rw-r--r-- | arch/arc/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/arm64/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/c6x/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/csky/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/h8300/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/hexagon/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/nds32/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/nios2/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/openrisc/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/riscv/include/uapi/asm/unistd.h | 3 | ||||
| -rw-r--r-- | arch/unicore32/include/uapi/asm/unistd.h | 1 | ||||
| -rw-r--r-- | include/uapi/asm-generic/unistd.h | 36 | ||||
| -rwxr-xr-x | scripts/checksyscalls.sh | 7 |
13 files changed, 56 insertions, 0 deletions
diff --git a/arch/arc/include/uapi/asm/unistd.h b/arch/arc/include/uapi/asm/unistd.h index 6a1a62a979dd..5eafa1115162 100644 --- a/arch/arc/include/uapi/asm/unistd.h +++ b/arch/arc/include/uapi/asm/unistd.h | |||
| @@ -23,6 +23,7 @@ | |||
| 23 | #define __ARCH_WANT_SYS_CLONE | 23 | #define __ARCH_WANT_SYS_CLONE |
| 24 | #define __ARCH_WANT_SYS_VFORK | 24 | #define __ARCH_WANT_SYS_VFORK |
| 25 | #define __ARCH_WANT_SYS_FORK | 25 | #define __ARCH_WANT_SYS_FORK |
| 26 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 26 | 27 | ||
| 27 | #define sys_mmap2 sys_mmap_pgoff | 28 | #define sys_mmap2 sys_mmap_pgoff |
| 28 | 29 | ||
diff --git a/arch/arm64/include/uapi/asm/unistd.h b/arch/arm64/include/uapi/asm/unistd.h index 79937de2a0cc..4703d218663a 100644 --- a/arch/arm64/include/uapi/asm/unistd.h +++ b/arch/arm64/include/uapi/asm/unistd.h | |||
| @@ -18,5 +18,6 @@ | |||
| 18 | #define __ARCH_WANT_RENAMEAT | 18 | #define __ARCH_WANT_RENAMEAT |
| 19 | #define __ARCH_WANT_NEW_STAT | 19 | #define __ARCH_WANT_NEW_STAT |
| 20 | #define __ARCH_WANT_SET_GET_RLIMIT | 20 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 21 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 21 | 22 | ||
| 22 | #include <asm-generic/unistd.h> | 23 | #include <asm-generic/unistd.h> |
diff --git a/arch/c6x/include/uapi/asm/unistd.h b/arch/c6x/include/uapi/asm/unistd.h index e3721b2cfd6a..79b724c39d9b 100644 --- a/arch/c6x/include/uapi/asm/unistd.h +++ b/arch/c6x/include/uapi/asm/unistd.h | |||
| @@ -19,6 +19,7 @@ | |||
| 19 | #define __ARCH_WANT_STAT64 | 19 | #define __ARCH_WANT_STAT64 |
| 20 | #define __ARCH_WANT_SET_GET_RLIMIT | 20 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 21 | #define __ARCH_WANT_SYS_CLONE | 21 | #define __ARCH_WANT_SYS_CLONE |
| 22 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 22 | 23 | ||
| 23 | /* Use the standard ABI for syscalls. */ | 24 | /* Use the standard ABI for syscalls. */ |
| 24 | #include <asm-generic/unistd.h> | 25 | #include <asm-generic/unistd.h> |
diff --git a/arch/csky/include/uapi/asm/unistd.h b/arch/csky/include/uapi/asm/unistd.h index f5c83492136f..ec60e49cea66 100644 --- a/arch/csky/include/uapi/asm/unistd.h +++ b/arch/csky/include/uapi/asm/unistd.h | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | 3 | ||
| 4 | #define __ARCH_WANT_SYS_CLONE | 4 | #define __ARCH_WANT_SYS_CLONE |
| 5 | #define __ARCH_WANT_SET_GET_RLIMIT | 5 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 6 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 6 | #include <asm-generic/unistd.h> | 7 | #include <asm-generic/unistd.h> |
| 7 | 8 | ||
| 8 | #define __NR_set_thread_area (__NR_arch_specific_syscall + 0) | 9 | #define __NR_set_thread_area (__NR_arch_specific_syscall + 0) |
diff --git a/arch/h8300/include/uapi/asm/unistd.h b/arch/h8300/include/uapi/asm/unistd.h index b9e9352f2328..eb7bc0012af5 100644 --- a/arch/h8300/include/uapi/asm/unistd.h +++ b/arch/h8300/include/uapi/asm/unistd.h | |||
| @@ -3,5 +3,6 @@ | |||
| 3 | #define __ARCH_WANT_RENAMEAT | 3 | #define __ARCH_WANT_RENAMEAT |
| 4 | #define __ARCH_WANT_STAT64 | 4 | #define __ARCH_WANT_STAT64 |
| 5 | #define __ARCH_WANT_SET_GET_RLIMIT | 5 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 6 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 6 | 7 | ||
| 7 | #include <asm-generic/unistd.h> | 8 | #include <asm-generic/unistd.h> |
diff --git a/arch/hexagon/include/uapi/asm/unistd.h b/arch/hexagon/include/uapi/asm/unistd.h index 6bb392a33c35..432c4db1b623 100644 --- a/arch/hexagon/include/uapi/asm/unistd.h +++ b/arch/hexagon/include/uapi/asm/unistd.h | |||
| @@ -35,5 +35,6 @@ | |||
| 35 | #define __ARCH_WANT_SYS_CLONE | 35 | #define __ARCH_WANT_SYS_CLONE |
| 36 | #define __ARCH_WANT_SYS_VFORK | 36 | #define __ARCH_WANT_SYS_VFORK |
| 37 | #define __ARCH_WANT_SYS_FORK | 37 | #define __ARCH_WANT_SYS_FORK |
| 38 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 38 | 39 | ||
| 39 | #include <asm-generic/unistd.h> | 40 | #include <asm-generic/unistd.h> |
diff --git a/arch/nds32/include/uapi/asm/unistd.h b/arch/nds32/include/uapi/asm/unistd.h index eb98d24d3190..4ec8f543103f 100644 --- a/arch/nds32/include/uapi/asm/unistd.h +++ b/arch/nds32/include/uapi/asm/unistd.h | |||
| @@ -4,6 +4,7 @@ | |||
| 4 | #define __ARCH_WANT_STAT64 | 4 | #define __ARCH_WANT_STAT64 |
| 5 | #define __ARCH_WANT_SYNC_FILE_RANGE2 | 5 | #define __ARCH_WANT_SYNC_FILE_RANGE2 |
| 6 | #define __ARCH_WANT_SET_GET_RLIMIT | 6 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 7 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 7 | 8 | ||
| 8 | /* Use the standard ABI for syscalls */ | 9 | /* Use the standard ABI for syscalls */ |
| 9 | #include <asm-generic/unistd.h> | 10 | #include <asm-generic/unistd.h> |
diff --git a/arch/nios2/include/uapi/asm/unistd.h b/arch/nios2/include/uapi/asm/unistd.h index fa68e68bc26d..0b4bb1d41b28 100644 --- a/arch/nios2/include/uapi/asm/unistd.h +++ b/arch/nios2/include/uapi/asm/unistd.h | |||
| @@ -21,6 +21,7 @@ | |||
| 21 | #define __ARCH_WANT_RENAMEAT | 21 | #define __ARCH_WANT_RENAMEAT |
| 22 | #define __ARCH_WANT_STAT64 | 22 | #define __ARCH_WANT_STAT64 |
| 23 | #define __ARCH_WANT_SET_GET_RLIMIT | 23 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 24 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 24 | 25 | ||
| 25 | /* Use the standard ABI for syscalls */ | 26 | /* Use the standard ABI for syscalls */ |
| 26 | #include <asm-generic/unistd.h> | 27 | #include <asm-generic/unistd.h> |
diff --git a/arch/openrisc/include/uapi/asm/unistd.h b/arch/openrisc/include/uapi/asm/unistd.h index 2e0bc0ff9f31..566f8c4f8047 100644 --- a/arch/openrisc/include/uapi/asm/unistd.h +++ b/arch/openrisc/include/uapi/asm/unistd.h | |||
| @@ -24,6 +24,7 @@ | |||
| 24 | #define __ARCH_WANT_SET_GET_RLIMIT | 24 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 25 | #define __ARCH_WANT_SYS_FORK | 25 | #define __ARCH_WANT_SYS_FORK |
| 26 | #define __ARCH_WANT_SYS_CLONE | 26 | #define __ARCH_WANT_SYS_CLONE |
| 27 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 27 | 28 | ||
| 28 | #include <asm-generic/unistd.h> | 29 | #include <asm-generic/unistd.h> |
| 29 | 30 | ||
diff --git a/arch/riscv/include/uapi/asm/unistd.h b/arch/riscv/include/uapi/asm/unistd.h index d9340c52e7ad..486a288b454c 100644 --- a/arch/riscv/include/uapi/asm/unistd.h +++ b/arch/riscv/include/uapi/asm/unistd.h | |||
| @@ -19,6 +19,9 @@ | |||
| 19 | #define __ARCH_WANT_NEW_STAT | 19 | #define __ARCH_WANT_NEW_STAT |
| 20 | #endif /* __LP64__ */ | 20 | #endif /* __LP64__ */ |
| 21 | #define __ARCH_WANT_SET_GET_RLIMIT | 21 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 22 | #ifndef __LP64__ | ||
| 23 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 24 | #endif | ||
| 22 | 25 | ||
| 23 | #include <asm-generic/unistd.h> | 26 | #include <asm-generic/unistd.h> |
| 24 | 27 | ||
diff --git a/arch/unicore32/include/uapi/asm/unistd.h b/arch/unicore32/include/uapi/asm/unistd.h index 2b575c0cf177..4e5e624f5d7e 100644 --- a/arch/unicore32/include/uapi/asm/unistd.h +++ b/arch/unicore32/include/uapi/asm/unistd.h | |||
| @@ -13,6 +13,7 @@ | |||
| 13 | 13 | ||
| 14 | #define __ARCH_WANT_RENAMEAT | 14 | #define __ARCH_WANT_RENAMEAT |
| 15 | #define __ARCH_WANT_SET_GET_RLIMIT | 15 | #define __ARCH_WANT_SET_GET_RLIMIT |
| 16 | #define __ARCH_WANT_TIME32_SYSCALLS | ||
| 16 | 17 | ||
| 17 | /* Use the standard ABI for syscalls. */ | 18 | /* Use the standard ABI for syscalls. */ |
| 18 | #include <asm-generic/unistd.h> | 19 | #include <asm-generic/unistd.h> |
diff --git a/include/uapi/asm-generic/unistd.h b/include/uapi/asm-generic/unistd.h index 2cdf600b05fa..12cdf611d217 100644 --- a/include/uapi/asm-generic/unistd.h +++ b/include/uapi/asm-generic/unistd.h | |||
| @@ -38,8 +38,10 @@ __SYSCALL(__NR_io_destroy, sys_io_destroy) | |||
| 38 | __SC_COMP(__NR_io_submit, sys_io_submit, compat_sys_io_submit) | 38 | __SC_COMP(__NR_io_submit, sys_io_submit, compat_sys_io_submit) |
| 39 | #define __NR_io_cancel 3 | 39 | #define __NR_io_cancel 3 |
| 40 | __SYSCALL(__NR_io_cancel, sys_io_cancel) | 40 | __SYSCALL(__NR_io_cancel, sys_io_cancel) |
| 41 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 41 | #define __NR_io_getevents 4 | 42 | #define __NR_io_getevents 4 |
| 42 | __SC_3264(__NR_io_getevents, sys_io_getevents_time32, sys_io_getevents) | 43 | __SC_3264(__NR_io_getevents, sys_io_getevents_time32, sys_io_getevents) |
| 44 | #endif | ||
| 43 | 45 | ||
| 44 | /* fs/xattr.c */ | 46 | /* fs/xattr.c */ |
| 45 | #define __NR_setxattr 5 | 47 | #define __NR_setxattr 5 |
| @@ -222,10 +224,12 @@ __SC_COMP(__NR_pwritev, sys_pwritev, compat_sys_pwritev) | |||
| 222 | __SYSCALL(__NR3264_sendfile, sys_sendfile64) | 224 | __SYSCALL(__NR3264_sendfile, sys_sendfile64) |
| 223 | 225 | ||
| 224 | /* fs/select.c */ | 226 | /* fs/select.c */ |
| 227 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 225 | #define __NR_pselect6 72 | 228 | #define __NR_pselect6 72 |
| 226 | __SC_COMP_3264(__NR_pselect6, sys_pselect6_time32, sys_pselect6, compat_sys_pselect6_time32) | 229 | __SC_COMP_3264(__NR_pselect6, sys_pselect6_time32, sys_pselect6, compat_sys_pselect6_time32) |
| 227 | #define __NR_ppoll 73 | 230 | #define __NR_ppoll 73 |
| 228 | __SC_COMP_3264(__NR_ppoll, sys_ppoll_time32, sys_ppoll, compat_sys_ppoll_time32) | 231 | __SC_COMP_3264(__NR_ppoll, sys_ppoll_time32, sys_ppoll, compat_sys_ppoll_time32) |
| 232 | #endif | ||
| 229 | 233 | ||
| 230 | /* fs/signalfd.c */ | 234 | /* fs/signalfd.c */ |
| 231 | #define __NR_signalfd4 74 | 235 | #define __NR_signalfd4 74 |
| @@ -269,16 +273,20 @@ __SC_COMP(__NR_sync_file_range, sys_sync_file_range, \ | |||
| 269 | /* fs/timerfd.c */ | 273 | /* fs/timerfd.c */ |
| 270 | #define __NR_timerfd_create 85 | 274 | #define __NR_timerfd_create 85 |
| 271 | __SYSCALL(__NR_timerfd_create, sys_timerfd_create) | 275 | __SYSCALL(__NR_timerfd_create, sys_timerfd_create) |
| 276 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 272 | #define __NR_timerfd_settime 86 | 277 | #define __NR_timerfd_settime 86 |
| 273 | __SC_3264(__NR_timerfd_settime, sys_timerfd_settime32, \ | 278 | __SC_3264(__NR_timerfd_settime, sys_timerfd_settime32, \ |
| 274 | sys_timerfd_settime) | 279 | sys_timerfd_settime) |
| 275 | #define __NR_timerfd_gettime 87 | 280 | #define __NR_timerfd_gettime 87 |
| 276 | __SC_3264(__NR_timerfd_gettime, sys_timerfd_gettime32, \ | 281 | __SC_3264(__NR_timerfd_gettime, sys_timerfd_gettime32, \ |
| 277 | sys_timerfd_gettime) | 282 | sys_timerfd_gettime) |
| 283 | #endif | ||
| 278 | 284 | ||
| 279 | /* fs/utimes.c */ | 285 | /* fs/utimes.c */ |
| 286 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 280 | #define __NR_utimensat 88 | 287 | #define __NR_utimensat 88 |
| 281 | __SC_3264(__NR_utimensat, sys_utimensat_time32, sys_utimensat) | 288 | __SC_3264(__NR_utimensat, sys_utimensat_time32, sys_utimensat) |
| 289 | #endif | ||
| 282 | 290 | ||
| 283 | /* kernel/acct.c */ | 291 | /* kernel/acct.c */ |
| 284 | #define __NR_acct 89 | 292 | #define __NR_acct 89 |
| @@ -309,8 +317,10 @@ __SYSCALL(__NR_set_tid_address, sys_set_tid_address) | |||
| 309 | __SYSCALL(__NR_unshare, sys_unshare) | 317 | __SYSCALL(__NR_unshare, sys_unshare) |
| 310 | 318 | ||
| 311 | /* kernel/futex.c */ | 319 | /* kernel/futex.c */ |
| 320 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 312 | #define __NR_futex 98 | 321 | #define __NR_futex 98 |
| 313 | __SC_3264(__NR_futex, sys_futex_time32, sys_futex) | 322 | __SC_3264(__NR_futex, sys_futex_time32, sys_futex) |
| 323 | #endif | ||
| 314 | #define __NR_set_robust_list 99 | 324 | #define __NR_set_robust_list 99 |
| 315 | __SC_COMP(__NR_set_robust_list, sys_set_robust_list, \ | 325 | __SC_COMP(__NR_set_robust_list, sys_set_robust_list, \ |
| 316 | compat_sys_set_robust_list) | 326 | compat_sys_set_robust_list) |
| @@ -319,8 +329,10 @@ __SC_COMP(__NR_get_robust_list, sys_get_robust_list, \ | |||
| 319 | compat_sys_get_robust_list) | 329 | compat_sys_get_robust_list) |
| 320 | 330 | ||
| 321 | /* kernel/hrtimer.c */ | 331 | /* kernel/hrtimer.c */ |
| 332 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 322 | #define __NR_nanosleep 101 | 333 | #define __NR_nanosleep 101 |
| 323 | __SC_3264(__NR_nanosleep, sys_nanosleep_time32, sys_nanosleep) | 334 | __SC_3264(__NR_nanosleep, sys_nanosleep_time32, sys_nanosleep) |
| 335 | #endif | ||
| 324 | 336 | ||
| 325 | /* kernel/itimer.c */ | 337 | /* kernel/itimer.c */ |
| 326 | #define __NR_getitimer 102 | 338 | #define __NR_getitimer 102 |
| @@ -341,14 +353,19 @@ __SYSCALL(__NR_delete_module, sys_delete_module) | |||
| 341 | /* kernel/posix-timers.c */ | 353 | /* kernel/posix-timers.c */ |
| 342 | #define __NR_timer_create 107 | 354 | #define __NR_timer_create 107 |
| 343 | __SC_COMP(__NR_timer_create, sys_timer_create, compat_sys_timer_create) | 355 | __SC_COMP(__NR_timer_create, sys_timer_create, compat_sys_timer_create) |
| 356 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 344 | #define __NR_timer_gettime 108 | 357 | #define __NR_timer_gettime 108 |
| 345 | __SC_3264(__NR_timer_gettime, sys_timer_gettime32, sys_timer_gettime) | 358 | __SC_3264(__NR_timer_gettime, sys_timer_gettime32, sys_timer_gettime) |
| 359 | #endif | ||
| 346 | #define __NR_timer_getoverrun 109 | 360 | #define __NR_timer_getoverrun 109 |
| 347 | __SYSCALL(__NR_timer_getoverrun, sys_timer_getoverrun) | 361 | __SYSCALL(__NR_timer_getoverrun, sys_timer_getoverrun) |
| 362 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 348 | #define __NR_timer_settime 110 | 363 | #define __NR_timer_settime 110 |
| 349 | __SC_3264(__NR_timer_settime, sys_timer_settime32, sys_timer_settime) | 364 | __SC_3264(__NR_timer_settime, sys_timer_settime32, sys_timer_settime) |
| 365 | #endif | ||
| 350 | #define __NR_timer_delete 111 | 366 | #define __NR_timer_delete 111 |
| 351 | __SYSCALL(__NR_timer_delete, sys_timer_delete) | 367 | __SYSCALL(__NR_timer_delete, sys_timer_delete) |
| 368 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 352 | #define __NR_clock_settime 112 | 369 | #define __NR_clock_settime 112 |
| 353 | __SC_3264(__NR_clock_settime, sys_clock_settime32, sys_clock_settime) | 370 | __SC_3264(__NR_clock_settime, sys_clock_settime32, sys_clock_settime) |
| 354 | #define __NR_clock_gettime 113 | 371 | #define __NR_clock_gettime 113 |
| @@ -358,6 +375,7 @@ __SC_3264(__NR_clock_getres, sys_clock_getres_time32, sys_clock_getres) | |||
| 358 | #define __NR_clock_nanosleep 115 | 375 | #define __NR_clock_nanosleep 115 |
| 359 | __SC_3264(__NR_clock_nanosleep, sys_clock_nanosleep_time32, \ | 376 | __SC_3264(__NR_clock_nanosleep, sys_clock_nanosleep_time32, \ |
| 360 | sys_clock_nanosleep) | 377 | sys_clock_nanosleep) |
| 378 | #endif | ||
| 361 | 379 | ||
| 362 | /* kernel/printk.c */ | 380 | /* kernel/printk.c */ |
| 363 | #define __NR_syslog 116 | 381 | #define __NR_syslog 116 |
| @@ -388,9 +406,11 @@ __SYSCALL(__NR_sched_yield, sys_sched_yield) | |||
| 388 | __SYSCALL(__NR_sched_get_priority_max, sys_sched_get_priority_max) | 406 | __SYSCALL(__NR_sched_get_priority_max, sys_sched_get_priority_max) |
| 389 | #define __NR_sched_get_priority_min 126 | 407 | #define __NR_sched_get_priority_min 126 |
| 390 | __SYSCALL(__NR_sched_get_priority_min, sys_sched_get_priority_min) | 408 | __SYSCALL(__NR_sched_get_priority_min, sys_sched_get_priority_min) |
| 409 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 391 | #define __NR_sched_rr_get_interval 127 | 410 | #define __NR_sched_rr_get_interval 127 |
| 392 | __SC_3264(__NR_sched_rr_get_interval, sys_sched_rr_get_interval_time32, \ | 411 | __SC_3264(__NR_sched_rr_get_interval, sys_sched_rr_get_interval_time32, \ |
| 393 | sys_sched_rr_get_interval) | 412 | sys_sched_rr_get_interval) |
| 413 | #endif | ||
| 394 | 414 | ||
| 395 | /* kernel/signal.c */ | 415 | /* kernel/signal.c */ |
| 396 | #define __NR_restart_syscall 128 | 416 | #define __NR_restart_syscall 128 |
| @@ -411,9 +431,11 @@ __SC_COMP(__NR_rt_sigaction, sys_rt_sigaction, compat_sys_rt_sigaction) | |||
| 411 | __SC_COMP(__NR_rt_sigprocmask, sys_rt_sigprocmask, compat_sys_rt_sigprocmask) | 431 | __SC_COMP(__NR_rt_sigprocmask, sys_rt_sigprocmask, compat_sys_rt_sigprocmask) |
| 412 | #define __NR_rt_sigpending 136 | 432 | #define __NR_rt_sigpending 136 |
| 413 | __SC_COMP(__NR_rt_sigpending, sys_rt_sigpending, compat_sys_rt_sigpending) | 433 | __SC_COMP(__NR_rt_sigpending, sys_rt_sigpending, compat_sys_rt_sigpending) |
| 434 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 414 | #define __NR_rt_sigtimedwait 137 | 435 | #define __NR_rt_sigtimedwait 137 |
| 415 | __SC_COMP_3264(__NR_rt_sigtimedwait, sys_rt_sigtimedwait_time32, \ | 436 | __SC_COMP_3264(__NR_rt_sigtimedwait, sys_rt_sigtimedwait_time32, \ |
| 416 | sys_rt_sigtimedwait, compat_sys_rt_sigtimedwait_time32) | 437 | sys_rt_sigtimedwait, compat_sys_rt_sigtimedwait_time32) |
| 438 | #endif | ||
| 417 | #define __NR_rt_sigqueueinfo 138 | 439 | #define __NR_rt_sigqueueinfo 138 |
| 418 | __SC_COMP(__NR_rt_sigqueueinfo, sys_rt_sigqueueinfo, \ | 440 | __SC_COMP(__NR_rt_sigqueueinfo, sys_rt_sigqueueinfo, \ |
| 419 | compat_sys_rt_sigqueueinfo) | 441 | compat_sys_rt_sigqueueinfo) |
| @@ -486,12 +508,14 @@ __SYSCALL(__NR_prctl, sys_prctl) | |||
| 486 | __SYSCALL(__NR_getcpu, sys_getcpu) | 508 | __SYSCALL(__NR_getcpu, sys_getcpu) |
| 487 | 509 | ||
| 488 | /* kernel/time.c */ | 510 | /* kernel/time.c */ |
| 511 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 489 | #define __NR_gettimeofday 169 | 512 | #define __NR_gettimeofday 169 |
| 490 | __SC_COMP(__NR_gettimeofday, sys_gettimeofday, compat_sys_gettimeofday) | 513 | __SC_COMP(__NR_gettimeofday, sys_gettimeofday, compat_sys_gettimeofday) |
| 491 | #define __NR_settimeofday 170 | 514 | #define __NR_settimeofday 170 |
| 492 | __SC_COMP(__NR_settimeofday, sys_settimeofday, compat_sys_settimeofday) | 515 | __SC_COMP(__NR_settimeofday, sys_settimeofday, compat_sys_settimeofday) |
| 493 | #define __NR_adjtimex 171 | 516 | #define __NR_adjtimex 171 |
| 494 | __SC_3264(__NR_adjtimex, sys_adjtimex_time32, sys_adjtimex) | 517 | __SC_3264(__NR_adjtimex, sys_adjtimex_time32, sys_adjtimex) |
| 518 | #endif | ||
| 495 | 519 | ||
| 496 | /* kernel/timer.c */ | 520 | /* kernel/timer.c */ |
| 497 | #define __NR_getpid 172 | 521 | #define __NR_getpid 172 |
| @@ -516,11 +540,13 @@ __SC_COMP(__NR_sysinfo, sys_sysinfo, compat_sys_sysinfo) | |||
| 516 | __SC_COMP(__NR_mq_open, sys_mq_open, compat_sys_mq_open) | 540 | __SC_COMP(__NR_mq_open, sys_mq_open, compat_sys_mq_open) |
| 517 | #define __NR_mq_unlink 181 | 541 | #define __NR_mq_unlink 181 |
| 518 | __SYSCALL(__NR_mq_unlink, sys_mq_unlink) | 542 | __SYSCALL(__NR_mq_unlink, sys_mq_unlink) |
| 543 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 519 | #define __NR_mq_timedsend 182 | 544 | #define __NR_mq_timedsend 182 |
| 520 | __SC_3264(__NR_mq_timedsend, sys_mq_timedsend_time32, sys_mq_timedsend) | 545 | __SC_3264(__NR_mq_timedsend, sys_mq_timedsend_time32, sys_mq_timedsend) |
| 521 | #define __NR_mq_timedreceive 183 | 546 | #define __NR_mq_timedreceive 183 |
| 522 | __SC_3264(__NR_mq_timedreceive, sys_mq_timedreceive_time32, \ | 547 | __SC_3264(__NR_mq_timedreceive, sys_mq_timedreceive_time32, \ |
| 523 | sys_mq_timedreceive) | 548 | sys_mq_timedreceive) |
| 549 | #endif | ||
| 524 | #define __NR_mq_notify 184 | 550 | #define __NR_mq_notify 184 |
| 525 | __SC_COMP(__NR_mq_notify, sys_mq_notify, compat_sys_mq_notify) | 551 | __SC_COMP(__NR_mq_notify, sys_mq_notify, compat_sys_mq_notify) |
| 526 | #define __NR_mq_getsetattr 185 | 552 | #define __NR_mq_getsetattr 185 |
| @@ -541,8 +567,10 @@ __SC_COMP(__NR_msgsnd, sys_msgsnd, compat_sys_msgsnd) | |||
| 541 | __SYSCALL(__NR_semget, sys_semget) | 567 | __SYSCALL(__NR_semget, sys_semget) |
| 542 | #define __NR_semctl 191 | 568 | #define __NR_semctl 191 |
| 543 | __SC_COMP(__NR_semctl, sys_semctl, compat_sys_semctl) | 569 | __SC_COMP(__NR_semctl, sys_semctl, compat_sys_semctl) |
| 570 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 544 | #define __NR_semtimedop 192 | 571 | #define __NR_semtimedop 192 |
| 545 | __SC_COMP(__NR_semtimedop, sys_semtimedop, sys_semtimedop_time32) | 572 | __SC_COMP(__NR_semtimedop, sys_semtimedop, sys_semtimedop_time32) |
| 573 | #endif | ||
| 546 | #define __NR_semop 193 | 574 | #define __NR_semop 193 |
| 547 | __SYSCALL(__NR_semop, sys_semop) | 575 | __SYSCALL(__NR_semop, sys_semop) |
| 548 | 576 | ||
| @@ -663,8 +691,10 @@ __SC_COMP(__NR_rt_tgsigqueueinfo, sys_rt_tgsigqueueinfo, \ | |||
| 663 | __SYSCALL(__NR_perf_event_open, sys_perf_event_open) | 691 | __SYSCALL(__NR_perf_event_open, sys_perf_event_open) |
| 664 | #define __NR_accept4 242 | 692 | #define __NR_accept4 242 |
| 665 | __SYSCALL(__NR_accept4, sys_accept4) | 693 | __SYSCALL(__NR_accept4, sys_accept4) |
| 694 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 666 | #define __NR_recvmmsg 243 | 695 | #define __NR_recvmmsg 243 |
| 667 | __SC_COMP_3264(__NR_recvmmsg, sys_recvmmsg_time32, sys_recvmmsg, compat_sys_recvmmsg_time32) | 696 | __SC_COMP_3264(__NR_recvmmsg, sys_recvmmsg_time32, sys_recvmmsg, compat_sys_recvmmsg_time32) |
| 697 | #endif | ||
| 668 | 698 | ||
| 669 | /* | 699 | /* |
| 670 | * Architectures may provide up to 16 syscalls of their own | 700 | * Architectures may provide up to 16 syscalls of their own |
| @@ -672,8 +702,10 @@ __SC_COMP_3264(__NR_recvmmsg, sys_recvmmsg_time32, sys_recvmmsg, compat_sys_recv | |||
| 672 | */ | 702 | */ |
| 673 | #define __NR_arch_specific_syscall 244 | 703 | #define __NR_arch_specific_syscall 244 |
| 674 | 704 | ||
| 705 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 675 | #define __NR_wait4 260 | 706 | #define __NR_wait4 260 |
| 676 | __SC_COMP(__NR_wait4, sys_wait4, compat_sys_wait4) | 707 | __SC_COMP(__NR_wait4, sys_wait4, compat_sys_wait4) |
| 708 | #endif | ||
| 677 | #define __NR_prlimit64 261 | 709 | #define __NR_prlimit64 261 |
| 678 | __SYSCALL(__NR_prlimit64, sys_prlimit64) | 710 | __SYSCALL(__NR_prlimit64, sys_prlimit64) |
| 679 | #define __NR_fanotify_init 262 | 711 | #define __NR_fanotify_init 262 |
| @@ -684,8 +716,10 @@ __SYSCALL(__NR_fanotify_mark, sys_fanotify_mark) | |||
| 684 | __SYSCALL(__NR_name_to_handle_at, sys_name_to_handle_at) | 716 | __SYSCALL(__NR_name_to_handle_at, sys_name_to_handle_at) |
| 685 | #define __NR_open_by_handle_at 265 | 717 | #define __NR_open_by_handle_at 265 |
| 686 | __SYSCALL(__NR_open_by_handle_at, sys_open_by_handle_at) | 718 | __SYSCALL(__NR_open_by_handle_at, sys_open_by_handle_at) |
| 719 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 687 | #define __NR_clock_adjtime 266 | 720 | #define __NR_clock_adjtime 266 |
| 688 | __SC_3264(__NR_clock_adjtime, sys_clock_adjtime32, sys_clock_adjtime) | 721 | __SC_3264(__NR_clock_adjtime, sys_clock_adjtime32, sys_clock_adjtime) |
| 722 | #endif | ||
| 689 | #define __NR_syncfs 267 | 723 | #define __NR_syncfs 267 |
| 690 | __SYSCALL(__NR_syncfs, sys_syncfs) | 724 | __SYSCALL(__NR_syncfs, sys_syncfs) |
| 691 | #define __NR_setns 268 | 725 | #define __NR_setns 268 |
| @@ -738,8 +772,10 @@ __SYSCALL(__NR_pkey_alloc, sys_pkey_alloc) | |||
| 738 | __SYSCALL(__NR_pkey_free, sys_pkey_free) | 772 | __SYSCALL(__NR_pkey_free, sys_pkey_free) |
| 739 | #define __NR_statx 291 | 773 | #define __NR_statx 291 |
| 740 | __SYSCALL(__NR_statx, sys_statx) | 774 | __SYSCALL(__NR_statx, sys_statx) |
| 775 | #if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32 | ||
| 741 | #define __NR_io_pgetevents 292 | 776 | #define __NR_io_pgetevents 292 |
| 742 | __SC_COMP_3264(__NR_io_pgetevents, sys_io_pgetevents_time32, sys_io_pgetevents, compat_sys_io_pgetevents) | 777 | __SC_COMP_3264(__NR_io_pgetevents, sys_io_pgetevents_time32, sys_io_pgetevents, compat_sys_io_pgetevents) |
| 778 | #endif | ||
| 743 | #define __NR_rseq 293 | 779 | #define __NR_rseq 293 |
| 744 | __SYSCALL(__NR_rseq, sys_rseq) | 780 | __SYSCALL(__NR_rseq, sys_rseq) |
| 745 | #define __NR_kexec_file_load 294 | 781 | #define __NR_kexec_file_load 294 |
diff --git a/scripts/checksyscalls.sh b/scripts/checksyscalls.sh index 53c5677d7e82..ffd635efbdca 100755 --- a/scripts/checksyscalls.sh +++ b/scripts/checksyscalls.sh | |||
| @@ -143,6 +143,13 @@ cat << EOF | |||
| 143 | #define __IGNORE_rt_sigtimedwait | 143 | #define __IGNORE_rt_sigtimedwait |
| 144 | #define __IGNORE_futex | 144 | #define __IGNORE_futex |
| 145 | #define __IGNORE_sched_rr_get_interval | 145 | #define __IGNORE_sched_rr_get_interval |
| 146 | #define __IGNORE_gettimeofday | ||
| 147 | #define __IGNORE_settimeofday | ||
| 148 | #define __IGNORE_wait4 | ||
| 149 | #define __IGNORE_adjtimex | ||
| 150 | #define __IGNORE_nanosleep | ||
| 151 | #define __IGNORE_io_getevents | ||
| 152 | #define __IGNORE_recvmmsg | ||
| 146 | #endif | 153 | #endif |
| 147 | 154 | ||
| 148 | /* i386-specific or historical system calls */ | 155 | /* i386-specific or historical system calls */ |
