aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2019-02-10 14:50:32 -0500
committerThomas Gleixner <tglx@linutronix.de>2019-02-10 15:24:43 -0500
commit41ea39101d6b84394fae0c12b702c4326aa71d17 (patch)
tree023b1a38f01747209feb2b3a034fe75eba17f67f
parentfd659cc095af9cc103e7a2a6448e8bb027035e40 (diff)
parent48166e6ea47d23984f0b481ca199250e1ce0730a (diff)
Merge tag 'y2038-new-syscalls' of git://git.kernel.org:/pub/scm/linux/kernel/git/arnd/playground into timers/2038
Pull y2038 - time64 system calls from Arnd Bergmann: This series finally gets us to the point of having system calls with 64-bit time_t on all architectures, after a long time of incremental preparation patches. There was actually one conversion that I missed during the summer, i.e. Deepa's timex series, which I now updated based the 5.0-rc1 changes and review comments. The following system calls are now added on all 32-bit architectures using the same system call numbers: 403 clock_gettime64 404 clock_settime64 405 clock_adjtime64 406 clock_getres_time64 407 clock_nanosleep_time64 408 timer_gettime64 409 timer_settime64 410 timerfd_gettime64 411 timerfd_settime64 412 utimensat_time64 413 pselect6_time64 414 ppoll_time64 416 io_pgetevents_time64 417 recvmmsg_time64 418 mq_timedsend_time64 419 mq_timedreceiv_time64 420 semtimedop_time64 421 rt_sigtimedwait_time64 422 futex_time64 423 sched_rr_get_interval_time64 Each one of these corresponds directly to an existing system call that includes a 'struct timespec' argument, or a structure containing a timespec or (in case of clock_adjtime) timeval. Not included here are new versions of getitimer/setitimer and getrusage/waitid, which are planned for the future but only needed to make a consistent API rather than for correct operation beyond y2038. These four system calls are based on 'timeval', and it has not been finally decided what the replacement kernel interface will use instead. So far, I have done a lot of build testing across most architectures, which has found a number of bugs. Runtime testing so far included testing LTP on 32-bit ARM with the existing system calls, to ensure we do not regress for existing binaries, and a test with a 32-bit x86 build of LTP against a modified version of the musl C library that has been adapted to the new system call interface [3]. This library can be used for testing on all architectures supported by musl-1.1.21, but it is not how the support is getting integrated into the official musl release. Official musl support is planned but will require more invasive changes to the library. Link: https://lore.kernel.org/lkml/20190110162435.309262-1-arnd@arndb.de/T/ Link: https://lore.kernel.org/lkml/20190118161835.2259170-1-arnd@arndb.de/ Link: https://git.linaro.org/people/arnd/musl-y2038.git/ [2]
-rw-r--r--arch/Kconfig2
-rw-r--r--arch/alpha/kernel/osf_sys.c5
-rw-r--r--arch/alpha/kernel/syscalls/syscall.tbl2
-rw-r--r--arch/arm/include/asm/unistd.h4
-rw-r--r--arch/arm/kernel/sys_oabi-compat.c8
-rw-r--r--arch/arm/tools/syscall.tbl77
-rw-r--r--arch/arm64/include/asm/unistd.h2
-rw-r--r--arch/arm64/include/asm/unistd32.h89
-rw-r--r--arch/ia64/kernel/syscalls/syscall.tbl1
-rw-r--r--arch/m68k/include/asm/unistd.h4
-rw-r--r--arch/m68k/kernel/syscalls/syscall.tbl72
-rw-r--r--arch/microblaze/include/asm/unistd.h4
-rw-r--r--arch/microblaze/kernel/syscalls/syscall.tbl77
-rw-r--r--arch/mips/include/asm/unistd.h4
-rw-r--r--arch/mips/kernel/syscalls/syscall_n32.tbl71
-rw-r--r--arch/mips/kernel/syscalls/syscall_n64.tbl1
-rw-r--r--arch/mips/kernel/syscalls/syscall_o32.tbl74
-rw-r--r--arch/parisc/include/asm/unistd.h9
-rw-r--r--arch/parisc/kernel/syscalls/syscall.tbl105
-rw-r--r--arch/powerpc/include/asm/unistd.h8
-rw-r--r--arch/powerpc/kernel/syscalls/syscall.tbl121
-rw-r--r--arch/s390/include/asm/unistd.h2
-rw-r--r--arch/s390/kernel/syscalls/syscall.tbl72
-rw-r--r--arch/sh/include/asm/unistd.h4
-rw-r--r--arch/sh/kernel/syscalls/syscall.tbl72
-rw-r--r--arch/sparc/include/asm/unistd.h8
-rw-r--r--arch/sparc/kernel/sys_sparc_64.c59
-rw-r--r--arch/sparc/kernel/syscalls/syscall.tbl100
-rw-r--r--arch/x86/entry/syscalls/syscall_32.tbl74
-rw-r--r--arch/x86/entry/syscalls/syscall_64.tbl4
-rw-r--r--arch/x86/include/asm/unistd.h8
-rw-r--r--arch/xtensa/include/asm/unistd.h2
-rw-r--r--arch/xtensa/kernel/syscalls/syscall.tbl71
-rw-r--r--drivers/ptp/ptp_clock.c2
-rw-r--r--fs/aio.c10
-rw-r--r--fs/select.c4
-rw-r--r--fs/timerfd.c4
-rw-r--r--fs/utimes.c10
-rw-r--r--include/linux/compat.h104
-rw-r--r--include/linux/posix-clock.h2
-rw-r--r--include/linux/syscalls.h65
-rw-r--r--include/linux/time32.h32
-rw-r--r--include/linux/time64.h8
-rw-r--r--include/linux/timex.h4
-rw-r--r--include/uapi/asm-generic/unistd.h102
-rw-r--r--include/uapi/linux/time.h4
-rw-r--r--include/uapi/linux/timex.h39
-rw-r--r--ipc/mqueue.c16
-rw-r--r--ipc/sem.c2
-rw-r--r--kernel/compat.c64
-rw-r--r--kernel/futex.c2
-rw-r--r--kernel/sched/core.c5
-rw-r--r--kernel/signal.c2
-rw-r--r--kernel/sys_ni.c18
-rw-r--r--kernel/time/hrtimer.c2
-rw-r--r--kernel/time/ntp.c18
-rw-r--r--kernel/time/ntp_internal.h2
-rw-r--r--kernel/time/posix-clock.c2
-rw-r--r--kernel/time/posix-stubs.c25
-rw-r--r--kernel/time/posix-timers.c72
-rw-r--r--kernel/time/posix-timers.h2
-rw-r--r--kernel/time/time.c92
-rw-r--r--kernel/time/timekeeping.c4
-rw-r--r--net/compat.c2
-rwxr-xr-xscripts/checksyscalls.sh40
65 files changed, 1263 insertions, 713 deletions
diff --git a/arch/Kconfig b/arch/Kconfig
index 4cfb6de48f79..46db715a7f42 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -759,7 +759,7 @@ config 64BIT_TIME
759 handling. 759 handling.
760 760
761config COMPAT_32BIT_TIME 761config COMPAT_32BIT_TIME
762 def_bool (!64BIT && 64BIT_TIME) || COMPAT 762 def_bool !64BIT || COMPAT
763 help 763 help
764 This enables 32 bit time_t support in addition to 64 bit time_t support. 764 This enables 32 bit time_t support in addition to 64 bit time_t support.
765 This is relevant on all 32-bit architectures, and 64-bit architectures 765 This is relevant on all 32-bit architectures, and 64-bit architectures
diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c
index 792586038808..bf497b8b0ec6 100644
--- a/arch/alpha/kernel/osf_sys.c
+++ b/arch/alpha/kernel/osf_sys.c
@@ -1253,7 +1253,7 @@ struct timex32 {
1253 1253
1254SYSCALL_DEFINE1(old_adjtimex, struct timex32 __user *, txc_p) 1254SYSCALL_DEFINE1(old_adjtimex, struct timex32 __user *, txc_p)
1255{ 1255{
1256 struct timex txc; 1256 struct __kernel_timex txc;
1257 int ret; 1257 int ret;
1258 1258
1259 /* copy relevant bits of struct timex. */ 1259 /* copy relevant bits of struct timex. */
@@ -1270,7 +1270,8 @@ SYSCALL_DEFINE1(old_adjtimex, struct timex32 __user *, txc_p)
1270 if (copy_to_user(txc_p, &txc, offsetof(struct timex32, time)) || 1270 if (copy_to_user(txc_p, &txc, offsetof(struct timex32, time)) ||
1271 (copy_to_user(&txc_p->tick, &txc.tick, sizeof(struct timex32) - 1271 (copy_to_user(&txc_p->tick, &txc.tick, sizeof(struct timex32) -
1272 offsetof(struct timex32, tick))) || 1272 offsetof(struct timex32, tick))) ||
1273 (put_tv_to_tv32(&txc_p->time, &txc.time))) 1273 (put_user(txc.time.tv_sec, &txc_p->time.tv_sec)) ||
1274 (put_user(txc.time.tv_usec, &txc_p->time.tv_usec)))
1274 return -EFAULT; 1275 return -EFAULT;
1275 1276
1276 return ret; 1277 return ret;
diff --git a/arch/alpha/kernel/syscalls/syscall.tbl b/arch/alpha/kernel/syscalls/syscall.tbl
index 340b88dd397e..63ed39cbd3bd 100644
--- a/arch/alpha/kernel/syscalls/syscall.tbl
+++ b/arch/alpha/kernel/syscalls/syscall.tbl
@@ -461,3 +461,5 @@
461530 common getegid sys_getegid 461530 common getegid sys_getegid
462531 common geteuid sys_geteuid 462531 common geteuid sys_geteuid
463532 common getppid sys_getppid 463532 common getppid sys_getppid
464# all other architectures have common numbers for new syscall, alpha
465# is the exception.
diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index d713587dfcf4..7a39e77984ef 100644
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -26,10 +26,10 @@
26#define __ARCH_WANT_SYS_SIGPROCMASK 26#define __ARCH_WANT_SYS_SIGPROCMASK
27#define __ARCH_WANT_SYS_OLD_MMAP 27#define __ARCH_WANT_SYS_OLD_MMAP
28#define __ARCH_WANT_SYS_OLD_SELECT 28#define __ARCH_WANT_SYS_OLD_SELECT
29#define __ARCH_WANT_SYS_UTIME 29#define __ARCH_WANT_SYS_UTIME32
30 30
31#if !defined(CONFIG_AEABI) || defined(CONFIG_OABI_COMPAT) 31#if !defined(CONFIG_AEABI) || defined(CONFIG_OABI_COMPAT)
32#define __ARCH_WANT_SYS_TIME 32#define __ARCH_WANT_SYS_TIME32
33#define __ARCH_WANT_SYS_IPC 33#define __ARCH_WANT_SYS_IPC
34#define __ARCH_WANT_SYS_OLDUMOUNT 34#define __ARCH_WANT_SYS_OLDUMOUNT
35#define __ARCH_WANT_SYS_ALARM 35#define __ARCH_WANT_SYS_ALARM
diff --git a/arch/arm/kernel/sys_oabi-compat.c b/arch/arm/kernel/sys_oabi-compat.c
index 92ab36f38795..acd054a42ba2 100644
--- a/arch/arm/kernel/sys_oabi-compat.c
+++ b/arch/arm/kernel/sys_oabi-compat.c
@@ -317,10 +317,10 @@ struct oabi_sembuf {
317asmlinkage long sys_oabi_semtimedop(int semid, 317asmlinkage long sys_oabi_semtimedop(int semid,
318 struct oabi_sembuf __user *tsops, 318 struct oabi_sembuf __user *tsops,
319 unsigned nsops, 319 unsigned nsops,
320 const struct timespec __user *timeout) 320 const struct old_timespec32 __user *timeout)
321{ 321{
322 struct sembuf *sops; 322 struct sembuf *sops;
323 struct timespec local_timeout; 323 struct old_timespec32 local_timeout;
324 long err; 324 long err;
325 int i; 325 int i;
326 326
@@ -350,7 +350,7 @@ asmlinkage long sys_oabi_semtimedop(int semid,
350 } else { 350 } else {
351 mm_segment_t fs = get_fs(); 351 mm_segment_t fs = get_fs();
352 set_fs(KERNEL_DS); 352 set_fs(KERNEL_DS);
353 err = sys_semtimedop(semid, sops, nsops, timeout); 353 err = sys_semtimedop_time32(semid, sops, nsops, timeout);
354 set_fs(fs); 354 set_fs(fs);
355 } 355 }
356 kfree(sops); 356 kfree(sops);
@@ -375,7 +375,7 @@ asmlinkage int sys_oabi_ipc(uint call, int first, int second, int third,
375 return sys_oabi_semtimedop(first, 375 return sys_oabi_semtimedop(first,
376 (struct oabi_sembuf __user *)ptr, 376 (struct oabi_sembuf __user *)ptr,
377 second, 377 second,
378 (const struct timespec __user *)fifth); 378 (const struct old_timespec32 __user *)fifth);
379 default: 379 default:
380 return sys_ipc(call, first, second, third, ptr, fifth); 380 return sys_ipc(call, first, second, third, ptr, fifth);
381 } 381 }
diff --git a/arch/arm/tools/syscall.tbl b/arch/arm/tools/syscall.tbl
index b54b7f2bc24a..9016f4081bb9 100644
--- a/arch/arm/tools/syscall.tbl
+++ b/arch/arm/tools/syscall.tbl
@@ -24,7 +24,7 @@
2410 common unlink sys_unlink 2410 common unlink sys_unlink
2511 common execve sys_execve 2511 common execve sys_execve
2612 common chdir sys_chdir 2612 common chdir sys_chdir
2713 oabi time sys_time 2713 oabi time sys_time32
2814 common mknod sys_mknod 2814 common mknod sys_mknod
2915 common chmod sys_chmod 2915 common chmod sys_chmod
3016 common lchown sys_lchown16 3016 common lchown sys_lchown16
@@ -36,12 +36,12 @@
3622 oabi umount sys_oldumount 3622 oabi umount sys_oldumount
3723 common setuid sys_setuid16 3723 common setuid sys_setuid16
3824 common getuid sys_getuid16 3824 common getuid sys_getuid16
3925 oabi stime sys_stime 3925 oabi stime sys_stime32
4026 common ptrace sys_ptrace 4026 common ptrace sys_ptrace
4127 oabi alarm sys_alarm 4127 oabi alarm sys_alarm
42# 28 was sys_fstat 42# 28 was sys_fstat
4329 common pause sys_pause 4329 common pause sys_pause
4430 oabi utime sys_utime 4430 oabi utime sys_utime32
45# 31 was sys_stty 45# 31 was sys_stty
46# 32 was sys_gtty 46# 32 was sys_gtty
4733 common access sys_access 4733 common access sys_access
@@ -137,7 +137,7 @@
137121 common setdomainname sys_setdomainname 137121 common setdomainname sys_setdomainname
138122 common uname sys_newuname 138122 common uname sys_newuname
139# 123 was sys_modify_ldt 139# 123 was sys_modify_ldt
140124 common adjtimex sys_adjtimex 140124 common adjtimex sys_adjtimex_time32
141125 common mprotect sys_mprotect 141125 common mprotect sys_mprotect
142126 common sigprocmask sys_sigprocmask 142126 common sigprocmask sys_sigprocmask
143# 127 was sys_create_module 143# 127 was sys_create_module
@@ -174,8 +174,8 @@
174158 common sched_yield sys_sched_yield 174158 common sched_yield sys_sched_yield
175159 common sched_get_priority_max sys_sched_get_priority_max 175159 common sched_get_priority_max sys_sched_get_priority_max
176160 common sched_get_priority_min sys_sched_get_priority_min 176160 common sched_get_priority_min sys_sched_get_priority_min
177161 common sched_rr_get_interval sys_sched_rr_get_interval 177161 common sched_rr_get_interval sys_sched_rr_get_interval_time32
178162 common nanosleep sys_nanosleep 178162 common nanosleep sys_nanosleep_time32
179163 common mremap sys_mremap 179163 common mremap sys_mremap
180164 common setresuid sys_setresuid16 180164 common setresuid sys_setresuid16
181165 common getresuid sys_getresuid16 181165 common getresuid sys_getresuid16
@@ -190,7 +190,7 @@
190174 common rt_sigaction sys_rt_sigaction 190174 common rt_sigaction sys_rt_sigaction
191175 common rt_sigprocmask sys_rt_sigprocmask 191175 common rt_sigprocmask sys_rt_sigprocmask
192176 common rt_sigpending sys_rt_sigpending 192176 common rt_sigpending sys_rt_sigpending
193177 common rt_sigtimedwait sys_rt_sigtimedwait 193177 common rt_sigtimedwait sys_rt_sigtimedwait_time32
194178 common rt_sigqueueinfo sys_rt_sigqueueinfo 194178 common rt_sigqueueinfo sys_rt_sigqueueinfo
195179 common rt_sigsuspend sys_rt_sigsuspend 195179 common rt_sigsuspend sys_rt_sigsuspend
196180 common pread64 sys_pread64 sys_oabi_pread64 196180 common pread64 sys_pread64 sys_oabi_pread64
@@ -254,12 +254,12 @@
254237 common fremovexattr sys_fremovexattr 254237 common fremovexattr sys_fremovexattr
255238 common tkill sys_tkill 255238 common tkill sys_tkill
256239 common sendfile64 sys_sendfile64 256239 common sendfile64 sys_sendfile64
257240 common futex sys_futex 257240 common futex sys_futex_time32
258241 common sched_setaffinity sys_sched_setaffinity 258241 common sched_setaffinity sys_sched_setaffinity
259242 common sched_getaffinity sys_sched_getaffinity 259242 common sched_getaffinity sys_sched_getaffinity
260243 common io_setup sys_io_setup 260243 common io_setup sys_io_setup
261244 common io_destroy sys_io_destroy 261244 common io_destroy sys_io_destroy
262245 common io_getevents sys_io_getevents 262245 common io_getevents sys_io_getevents_time32
263246 common io_submit sys_io_submit 263246 common io_submit sys_io_submit
264247 common io_cancel sys_io_cancel 264247 common io_cancel sys_io_cancel
265248 common exit_group sys_exit_group 265248 common exit_group sys_exit_group
@@ -272,26 +272,26 @@
272# 255 for get_thread_area 272# 255 for get_thread_area
273256 common set_tid_address sys_set_tid_address 273256 common set_tid_address sys_set_tid_address
274257 common timer_create sys_timer_create 274257 common timer_create sys_timer_create
275258 common timer_settime sys_timer_settime 275258 common timer_settime sys_timer_settime32
276259 common timer_gettime sys_timer_gettime 276259 common timer_gettime sys_timer_gettime32
277260 common timer_getoverrun sys_timer_getoverrun 277260 common timer_getoverrun sys_timer_getoverrun
278261 common timer_delete sys_timer_delete 278261 common timer_delete sys_timer_delete
279262 common clock_settime sys_clock_settime 279262 common clock_settime sys_clock_settime32
280263 common clock_gettime sys_clock_gettime 280263 common clock_gettime sys_clock_gettime32
281264 common clock_getres sys_clock_getres 281264 common clock_getres sys_clock_getres_time32
282265 common clock_nanosleep sys_clock_nanosleep 282265 common clock_nanosleep sys_clock_nanosleep_time32
283266 common statfs64 sys_statfs64_wrapper 283266 common statfs64 sys_statfs64_wrapper
284267 common fstatfs64 sys_fstatfs64_wrapper 284267 common fstatfs64 sys_fstatfs64_wrapper
285268 common tgkill sys_tgkill 285268 common tgkill sys_tgkill
286269 common utimes sys_utimes 286269 common utimes sys_utimes_time32
287270 common arm_fadvise64_64 sys_arm_fadvise64_64 287270 common arm_fadvise64_64 sys_arm_fadvise64_64
288271 common pciconfig_iobase sys_pciconfig_iobase 288271 common pciconfig_iobase sys_pciconfig_iobase
289272 common pciconfig_read sys_pciconfig_read 289272 common pciconfig_read sys_pciconfig_read
290273 common pciconfig_write sys_pciconfig_write 290273 common pciconfig_write sys_pciconfig_write
291274 common mq_open sys_mq_open 291274 common mq_open sys_mq_open
292275 common mq_unlink sys_mq_unlink 292275 common mq_unlink sys_mq_unlink
293276 common mq_timedsend sys_mq_timedsend 293276 common mq_timedsend sys_mq_timedsend_time32
294277 common mq_timedreceive sys_mq_timedreceive 294277 common mq_timedreceive sys_mq_timedreceive_time32
295278 common mq_notify sys_mq_notify 295278 common mq_notify sys_mq_notify
296279 common mq_getsetattr sys_mq_getsetattr 296279 common mq_getsetattr sys_mq_getsetattr
297280 common waitid sys_waitid 297280 common waitid sys_waitid
@@ -326,7 +326,7 @@
326309 common add_key sys_add_key 326309 common add_key sys_add_key
327310 common request_key sys_request_key 327310 common request_key sys_request_key
328311 common keyctl sys_keyctl 328311 common keyctl sys_keyctl
329312 common semtimedop sys_semtimedop sys_oabi_semtimedop 329312 common semtimedop sys_semtimedop_time32 sys_oabi_semtimedop
330313 common vserver 330313 common vserver
331314 common ioprio_set sys_ioprio_set 331314 common ioprio_set sys_ioprio_set
332315 common ioprio_get sys_ioprio_get 332315 common ioprio_get sys_ioprio_get
@@ -340,7 +340,7 @@
340323 common mkdirat sys_mkdirat 340323 common mkdirat sys_mkdirat
341324 common mknodat sys_mknodat 341324 common mknodat sys_mknodat
342325 common fchownat sys_fchownat 342325 common fchownat sys_fchownat
343326 common futimesat sys_futimesat 343326 common futimesat sys_futimesat_time32
344327 common fstatat64 sys_fstatat64 sys_oabi_fstatat64 344327 common fstatat64 sys_fstatat64 sys_oabi_fstatat64
345328 common unlinkat sys_unlinkat 345328 common unlinkat sys_unlinkat
346329 common renameat sys_renameat 346329 common renameat sys_renameat
@@ -349,8 +349,8 @@
349332 common readlinkat sys_readlinkat 349332 common readlinkat sys_readlinkat
350333 common fchmodat sys_fchmodat 350333 common fchmodat sys_fchmodat
351334 common faccessat sys_faccessat 351334 common faccessat sys_faccessat
352335 common pselect6 sys_pselect6 352335 common pselect6 sys_pselect6_time32
353336 common ppoll sys_ppoll 353336 common ppoll sys_ppoll_time32
354337 common unshare sys_unshare 354337 common unshare sys_unshare
355338 common set_robust_list sys_set_robust_list 355338 common set_robust_list sys_set_robust_list
356339 common get_robust_list sys_get_robust_list 356339 common get_robust_list sys_get_robust_list
@@ -362,13 +362,13 @@
362345 common getcpu sys_getcpu 362345 common getcpu sys_getcpu
363346 common epoll_pwait sys_epoll_pwait 363346 common epoll_pwait sys_epoll_pwait
364347 common kexec_load sys_kexec_load 364347 common kexec_load sys_kexec_load
365348 common utimensat sys_utimensat 365348 common utimensat sys_utimensat_time32
366349 common signalfd sys_signalfd 366349 common signalfd sys_signalfd
367350 common timerfd_create sys_timerfd_create 367350 common timerfd_create sys_timerfd_create
368351 common eventfd sys_eventfd 368351 common eventfd sys_eventfd
369352 common fallocate sys_fallocate 369352 common fallocate sys_fallocate
370353 common timerfd_settime sys_timerfd_settime 370353 common timerfd_settime sys_timerfd_settime32
371354 common timerfd_gettime sys_timerfd_gettime 371354 common timerfd_gettime sys_timerfd_gettime32
372355 common signalfd4 sys_signalfd4 372355 common signalfd4 sys_signalfd4
373356 common eventfd2 sys_eventfd2 373356 common eventfd2 sys_eventfd2
374357 common epoll_create1 sys_epoll_create1 374357 common epoll_create1 sys_epoll_create1
@@ -379,14 +379,14 @@
379362 common pwritev sys_pwritev 379362 common pwritev sys_pwritev
380363 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo 380363 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo
381364 common perf_event_open sys_perf_event_open 381364 common perf_event_open sys_perf_event_open
382365 common recvmmsg sys_recvmmsg 382365 common recvmmsg sys_recvmmsg_time32
383366 common accept4 sys_accept4 383366 common accept4 sys_accept4
384367 common fanotify_init sys_fanotify_init 384367 common fanotify_init sys_fanotify_init
385368 common fanotify_mark sys_fanotify_mark 385368 common fanotify_mark sys_fanotify_mark
386369 common prlimit64 sys_prlimit64 386369 common prlimit64 sys_prlimit64
387370 common name_to_handle_at sys_name_to_handle_at 387370 common name_to_handle_at sys_name_to_handle_at
388371 common open_by_handle_at sys_open_by_handle_at 388371 common open_by_handle_at sys_open_by_handle_at
389372 common clock_adjtime sys_clock_adjtime 389372 common clock_adjtime sys_clock_adjtime32
390373 common syncfs sys_syncfs 390373 common syncfs sys_syncfs
391374 common sendmmsg sys_sendmmsg 391374 common sendmmsg sys_sendmmsg
392375 common setns sys_setns 392375 common setns sys_setns
@@ -413,6 +413,27 @@
413396 common pkey_free sys_pkey_free 413396 common pkey_free sys_pkey_free
414397 common statx sys_statx 414397 common statx sys_statx
415398 common rseq sys_rseq 415398 common rseq sys_rseq
416399 common io_pgetevents sys_io_pgetevents 416399 common io_pgetevents sys_io_pgetevents_time32
417400 common migrate_pages sys_migrate_pages 417400 common migrate_pages sys_migrate_pages
418401 common kexec_file_load sys_kexec_file_load 418401 common kexec_file_load sys_kexec_file_load
419# 402 is unused
420403 common clock_gettime64 sys_clock_gettime
421404 common clock_settime64 sys_clock_settime
422405 common clock_adjtime64 sys_clock_adjtime
423406 common clock_getres_time64 sys_clock_getres
424407 common clock_nanosleep_time64 sys_clock_nanosleep
425408 common timer_gettime64 sys_timer_gettime
426409 common timer_settime64 sys_timer_settime
427410 common timerfd_gettime64 sys_timerfd_gettime
428411 common timerfd_settime64 sys_timerfd_settime
429412 common utimensat_time64 sys_utimensat
430413 common pselect6_time64 sys_pselect6
431414 common ppoll_time64 sys_ppoll
432416 common io_pgetevents_time64 sys_io_pgetevents
433417 common recvmmsg_time64 sys_recvmmsg
434418 common mq_timedsend_time64 sys_mq_timedsend
435419 common mq_timedreceive_time64 sys_mq_timedreceive
436420 common semtimedop_time64 sys_semtimedop
437421 common rt_sigtimedwait_time64 sys_rt_sigtimedwait
438422 common futex_time64 sys_futex
439423 common sched_rr_get_interval_time64 sys_sched_rr_get_interval
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/include/asm/unistd.h
index 2c30e6f145ff..d1dd93436e1e 100644
--- a/arch/arm64/include/asm/unistd.h
+++ b/arch/arm64/include/asm/unistd.h
@@ -44,7 +44,7 @@
44#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5) 44#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5)
45#define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800) 45#define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800)
46 46
47#define __NR_compat_syscalls 402 47#define __NR_compat_syscalls 424
48#endif 48#endif
49 49
50#define __ARCH_WANT_SYS_CLONE 50#define __ARCH_WANT_SYS_CLONE
diff --git a/arch/arm64/include/asm/unistd32.h b/arch/arm64/include/asm/unistd32.h
index d10cce69a4b0..5590f2623690 100644
--- a/arch/arm64/include/asm/unistd32.h
+++ b/arch/arm64/include/asm/unistd32.h
@@ -270,7 +270,7 @@ __SYSCALL(__NR_uname, sys_newuname)
270 /* 123 was sys_modify_ldt */ 270 /* 123 was sys_modify_ldt */
271__SYSCALL(123, sys_ni_syscall) 271__SYSCALL(123, sys_ni_syscall)
272#define __NR_adjtimex 124 272#define __NR_adjtimex 124
273__SYSCALL(__NR_adjtimex, compat_sys_adjtimex) 273__SYSCALL(__NR_adjtimex, sys_adjtimex_time32)
274#define __NR_mprotect 125 274#define __NR_mprotect 125
275__SYSCALL(__NR_mprotect, sys_mprotect) 275__SYSCALL(__NR_mprotect, sys_mprotect)
276#define __NR_sigprocmask 126 276#define __NR_sigprocmask 126
@@ -344,9 +344,9 @@ __SYSCALL(__NR_sched_get_priority_max, sys_sched_get_priority_max)
344#define __NR_sched_get_priority_min 160 344#define __NR_sched_get_priority_min 160
345__SYSCALL(__NR_sched_get_priority_min, sys_sched_get_priority_min) 345__SYSCALL(__NR_sched_get_priority_min, sys_sched_get_priority_min)
346#define __NR_sched_rr_get_interval 161 346#define __NR_sched_rr_get_interval 161
347__SYSCALL(__NR_sched_rr_get_interval, compat_sys_sched_rr_get_interval) 347__SYSCALL(__NR_sched_rr_get_interval, sys_sched_rr_get_interval_time32)
348#define __NR_nanosleep 162 348#define __NR_nanosleep 162
349__SYSCALL(__NR_nanosleep, compat_sys_nanosleep) 349__SYSCALL(__NR_nanosleep, sys_nanosleep_time32)
350#define __NR_mremap 163 350#define __NR_mremap 163
351__SYSCALL(__NR_mremap, sys_mremap) 351__SYSCALL(__NR_mremap, sys_mremap)
352#define __NR_setresuid 164 352#define __NR_setresuid 164
@@ -376,7 +376,7 @@ __SYSCALL(__NR_rt_sigprocmask, compat_sys_rt_sigprocmask)
376#define __NR_rt_sigpending 176 376#define __NR_rt_sigpending 176
377__SYSCALL(__NR_rt_sigpending, compat_sys_rt_sigpending) 377__SYSCALL(__NR_rt_sigpending, compat_sys_rt_sigpending)
378#define __NR_rt_sigtimedwait 177 378#define __NR_rt_sigtimedwait 177
379__SYSCALL(__NR_rt_sigtimedwait, compat_sys_rt_sigtimedwait) 379__SYSCALL(__NR_rt_sigtimedwait, compat_sys_rt_sigtimedwait_time32)
380#define __NR_rt_sigqueueinfo 178 380#define __NR_rt_sigqueueinfo 178
381__SYSCALL(__NR_rt_sigqueueinfo, compat_sys_rt_sigqueueinfo) 381__SYSCALL(__NR_rt_sigqueueinfo, compat_sys_rt_sigqueueinfo)
382#define __NR_rt_sigsuspend 179 382#define __NR_rt_sigsuspend 179
@@ -502,7 +502,7 @@ __SYSCALL(__NR_tkill, sys_tkill)
502#define __NR_sendfile64 239 502#define __NR_sendfile64 239
503__SYSCALL(__NR_sendfile64, sys_sendfile64) 503__SYSCALL(__NR_sendfile64, sys_sendfile64)
504#define __NR_futex 240 504#define __NR_futex 240
505__SYSCALL(__NR_futex, compat_sys_futex) 505__SYSCALL(__NR_futex, sys_futex_time32)
506#define __NR_sched_setaffinity 241 506#define __NR_sched_setaffinity 241
507__SYSCALL(__NR_sched_setaffinity, compat_sys_sched_setaffinity) 507__SYSCALL(__NR_sched_setaffinity, compat_sys_sched_setaffinity)
508#define __NR_sched_getaffinity 242 508#define __NR_sched_getaffinity 242
@@ -512,7 +512,7 @@ __SYSCALL(__NR_io_setup, compat_sys_io_setup)
512#define __NR_io_destroy 244 512#define __NR_io_destroy 244
513__SYSCALL(__NR_io_destroy, sys_io_destroy) 513__SYSCALL(__NR_io_destroy, sys_io_destroy)
514#define __NR_io_getevents 245 514#define __NR_io_getevents 245
515__SYSCALL(__NR_io_getevents, compat_sys_io_getevents) 515__SYSCALL(__NR_io_getevents, sys_io_getevents_time32)
516#define __NR_io_submit 246 516#define __NR_io_submit 246
517__SYSCALL(__NR_io_submit, compat_sys_io_submit) 517__SYSCALL(__NR_io_submit, compat_sys_io_submit)
518#define __NR_io_cancel 247 518#define __NR_io_cancel 247
@@ -538,21 +538,21 @@ __SYSCALL(__NR_set_tid_address, sys_set_tid_address)
538#define __NR_timer_create 257 538#define __NR_timer_create 257
539__SYSCALL(__NR_timer_create, compat_sys_timer_create) 539__SYSCALL(__NR_timer_create, compat_sys_timer_create)
540#define __NR_timer_settime 258 540#define __NR_timer_settime 258
541__SYSCALL(__NR_timer_settime, compat_sys_timer_settime) 541__SYSCALL(__NR_timer_settime, sys_timer_settime32)
542#define __NR_timer_gettime 259 542#define __NR_timer_gettime 259
543__SYSCALL(__NR_timer_gettime, compat_sys_timer_gettime) 543__SYSCALL(__NR_timer_gettime, sys_timer_gettime32)
544#define __NR_timer_getoverrun 260 544#define __NR_timer_getoverrun 260
545__SYSCALL(__NR_timer_getoverrun, sys_timer_getoverrun) 545__SYSCALL(__NR_timer_getoverrun, sys_timer_getoverrun)
546#define __NR_timer_delete 261 546#define __NR_timer_delete 261
547__SYSCALL(__NR_timer_delete, sys_timer_delete) 547__SYSCALL(__NR_timer_delete, sys_timer_delete)
548#define __NR_clock_settime 262 548#define __NR_clock_settime 262
549__SYSCALL(__NR_clock_settime, compat_sys_clock_settime) 549__SYSCALL(__NR_clock_settime, sys_clock_settime32)
550#define __NR_clock_gettime 263 550#define __NR_clock_gettime 263
551__SYSCALL(__NR_clock_gettime, compat_sys_clock_gettime) 551__SYSCALL(__NR_clock_gettime, sys_clock_gettime32)
552#define __NR_clock_getres 264 552#define __NR_clock_getres 264
553__SYSCALL(__NR_clock_getres, compat_sys_clock_getres) 553__SYSCALL(__NR_clock_getres, sys_clock_getres_time32)
554#define __NR_clock_nanosleep 265 554#define __NR_clock_nanosleep 265
555__SYSCALL(__NR_clock_nanosleep, compat_sys_clock_nanosleep) 555__SYSCALL(__NR_clock_nanosleep, sys_clock_nanosleep_time32)
556#define __NR_statfs64 266 556#define __NR_statfs64 266
557__SYSCALL(__NR_statfs64, compat_sys_aarch32_statfs64) 557__SYSCALL(__NR_statfs64, compat_sys_aarch32_statfs64)
558#define __NR_fstatfs64 267 558#define __NR_fstatfs64 267
@@ -560,7 +560,7 @@ __SYSCALL(__NR_fstatfs64, compat_sys_aarch32_fstatfs64)
560#define __NR_tgkill 268 560#define __NR_tgkill 268
561__SYSCALL(__NR_tgkill, sys_tgkill) 561__SYSCALL(__NR_tgkill, sys_tgkill)
562#define __NR_utimes 269 562#define __NR_utimes 269
563__SYSCALL(__NR_utimes, compat_sys_utimes) 563__SYSCALL(__NR_utimes, sys_utimes_time32)
564#define __NR_arm_fadvise64_64 270 564#define __NR_arm_fadvise64_64 270
565__SYSCALL(__NR_arm_fadvise64_64, compat_sys_aarch32_fadvise64_64) 565__SYSCALL(__NR_arm_fadvise64_64, compat_sys_aarch32_fadvise64_64)
566#define __NR_pciconfig_iobase 271 566#define __NR_pciconfig_iobase 271
@@ -574,9 +574,9 @@ __SYSCALL(__NR_mq_open, compat_sys_mq_open)
574#define __NR_mq_unlink 275 574#define __NR_mq_unlink 275
575__SYSCALL(__NR_mq_unlink, sys_mq_unlink) 575__SYSCALL(__NR_mq_unlink, sys_mq_unlink)
576#define __NR_mq_timedsend 276 576#define __NR_mq_timedsend 276
577__SYSCALL(__NR_mq_timedsend, compat_sys_mq_timedsend) 577__SYSCALL(__NR_mq_timedsend, sys_mq_timedsend_time32)
578#define __NR_mq_timedreceive 277 578#define __NR_mq_timedreceive 277
579__SYSCALL(__NR_mq_timedreceive, compat_sys_mq_timedreceive) 579__SYSCALL(__NR_mq_timedreceive, sys_mq_timedreceive_time32)
580#define __NR_mq_notify 278 580#define __NR_mq_notify 278
581__SYSCALL(__NR_mq_notify, compat_sys_mq_notify) 581__SYSCALL(__NR_mq_notify, compat_sys_mq_notify)
582#define __NR_mq_getsetattr 279 582#define __NR_mq_getsetattr 279
@@ -646,7 +646,7 @@ __SYSCALL(__NR_request_key, sys_request_key)
646#define __NR_keyctl 311 646#define __NR_keyctl 311
647__SYSCALL(__NR_keyctl, compat_sys_keyctl) 647__SYSCALL(__NR_keyctl, compat_sys_keyctl)
648#define __NR_semtimedop 312 648#define __NR_semtimedop 312
649__SYSCALL(__NR_semtimedop, compat_sys_semtimedop) 649__SYSCALL(__NR_semtimedop, sys_semtimedop_time32)
650#define __NR_vserver 313 650#define __NR_vserver 313
651__SYSCALL(__NR_vserver, sys_ni_syscall) 651__SYSCALL(__NR_vserver, sys_ni_syscall)
652#define __NR_ioprio_set 314 652#define __NR_ioprio_set 314
@@ -674,7 +674,7 @@ __SYSCALL(__NR_mknodat, sys_mknodat)
674#define __NR_fchownat 325 674#define __NR_fchownat 325
675__SYSCALL(__NR_fchownat, sys_fchownat) 675__SYSCALL(__NR_fchownat, sys_fchownat)
676#define __NR_futimesat 326 676#define __NR_futimesat 326
677__SYSCALL(__NR_futimesat, compat_sys_futimesat) 677__SYSCALL(__NR_futimesat, sys_futimesat_time32)
678#define __NR_fstatat64 327 678#define __NR_fstatat64 327
679__SYSCALL(__NR_fstatat64, sys_fstatat64) 679__SYSCALL(__NR_fstatat64, sys_fstatat64)
680#define __NR_unlinkat 328 680#define __NR_unlinkat 328
@@ -692,9 +692,9 @@ __SYSCALL(__NR_fchmodat, sys_fchmodat)
692#define __NR_faccessat 334 692#define __NR_faccessat 334
693__SYSCALL(__NR_faccessat, sys_faccessat) 693__SYSCALL(__NR_faccessat, sys_faccessat)
694#define __NR_pselect6 335 694#define __NR_pselect6 335
695__SYSCALL(__NR_pselect6, compat_sys_pselect6) 695__SYSCALL(__NR_pselect6, compat_sys_pselect6_time32)
696#define __NR_ppoll 336 696#define __NR_ppoll 336
697__SYSCALL(__NR_ppoll, compat_sys_ppoll) 697__SYSCALL(__NR_ppoll, compat_sys_ppoll_time32)
698#define __NR_unshare 337 698#define __NR_unshare 337
699__SYSCALL(__NR_unshare, sys_unshare) 699__SYSCALL(__NR_unshare, sys_unshare)
700#define __NR_set_robust_list 338 700#define __NR_set_robust_list 338
@@ -718,7 +718,7 @@ __SYSCALL(__NR_epoll_pwait, compat_sys_epoll_pwait)
718#define __NR_kexec_load 347 718#define __NR_kexec_load 347
719__SYSCALL(__NR_kexec_load, compat_sys_kexec_load) 719__SYSCALL(__NR_kexec_load, compat_sys_kexec_load)
720#define __NR_utimensat 348 720#define __NR_utimensat 348
721__SYSCALL(__NR_utimensat, compat_sys_utimensat) 721__SYSCALL(__NR_utimensat, sys_utimensat_time32)
722#define __NR_signalfd 349 722#define __NR_signalfd 349
723__SYSCALL(__NR_signalfd, compat_sys_signalfd) 723__SYSCALL(__NR_signalfd, compat_sys_signalfd)
724#define __NR_timerfd_create 350 724#define __NR_timerfd_create 350
@@ -728,9 +728,9 @@ __SYSCALL(__NR_eventfd, sys_eventfd)
728#define __NR_fallocate 352 728#define __NR_fallocate 352
729__SYSCALL(__NR_fallocate, compat_sys_aarch32_fallocate) 729__SYSCALL(__NR_fallocate, compat_sys_aarch32_fallocate)
730#define __NR_timerfd_settime 353 730#define __NR_timerfd_settime 353
731__SYSCALL(__NR_timerfd_settime, compat_sys_timerfd_settime) 731__SYSCALL(__NR_timerfd_settime, sys_timerfd_settime32)
732#define __NR_timerfd_gettime 354 732#define __NR_timerfd_gettime 354
733__SYSCALL(__NR_timerfd_gettime, compat_sys_timerfd_gettime) 733__SYSCALL(__NR_timerfd_gettime, sys_timerfd_gettime32)
734#define __NR_signalfd4 355 734#define __NR_signalfd4 355
735__SYSCALL(__NR_signalfd4, compat_sys_signalfd4) 735__SYSCALL(__NR_signalfd4, compat_sys_signalfd4)
736#define __NR_eventfd2 356 736#define __NR_eventfd2 356
@@ -752,7 +752,7 @@ __SYSCALL(__NR_rt_tgsigqueueinfo, compat_sys_rt_tgsigqueueinfo)
752#define __NR_perf_event_open 364 752#define __NR_perf_event_open 364
753__SYSCALL(__NR_perf_event_open, sys_perf_event_open) 753__SYSCALL(__NR_perf_event_open, sys_perf_event_open)
754#define __NR_recvmmsg 365 754#define __NR_recvmmsg 365
755__SYSCALL(__NR_recvmmsg, compat_sys_recvmmsg) 755__SYSCALL(__NR_recvmmsg, compat_sys_recvmmsg_time32)
756#define __NR_accept4 366 756#define __NR_accept4 366
757__SYSCALL(__NR_accept4, sys_accept4) 757__SYSCALL(__NR_accept4, sys_accept4)
758#define __NR_fanotify_init 367 758#define __NR_fanotify_init 367
@@ -766,7 +766,7 @@ __SYSCALL(__NR_name_to_handle_at, sys_name_to_handle_at)
766#define __NR_open_by_handle_at 371 766#define __NR_open_by_handle_at 371
767__SYSCALL(__NR_open_by_handle_at, compat_sys_open_by_handle_at) 767__SYSCALL(__NR_open_by_handle_at, compat_sys_open_by_handle_at)
768#define __NR_clock_adjtime 372 768#define __NR_clock_adjtime 372
769__SYSCALL(__NR_clock_adjtime, compat_sys_clock_adjtime) 769__SYSCALL(__NR_clock_adjtime, sys_clock_adjtime32)
770#define __NR_syncfs 373 770#define __NR_syncfs 373
771__SYSCALL(__NR_syncfs, sys_syncfs) 771__SYSCALL(__NR_syncfs, sys_syncfs)
772#define __NR_sendmmsg 374 772#define __NR_sendmmsg 374
@@ -825,6 +825,47 @@ __SYSCALL(__NR_io_pgetevents, compat_sys_io_pgetevents)
825__SYSCALL(__NR_migrate_pages, compat_sys_migrate_pages) 825__SYSCALL(__NR_migrate_pages, compat_sys_migrate_pages)
826#define __NR_kexec_file_load 401 826#define __NR_kexec_file_load 401
827__SYSCALL(__NR_kexec_file_load, sys_kexec_file_load) 827__SYSCALL(__NR_kexec_file_load, sys_kexec_file_load)
828/* 402 is unused */
829#define __NR_clock_gettime64 403
830__SYSCALL(__NR_clock_gettime64, sys_clock_gettime)
831#define __NR_clock_settime64 404
832__SYSCALL(__NR_clock_settime64, sys_clock_settime)
833#define __NR_clock_adjtime64 405
834__SYSCALL(__NR_clock_adjtime64, sys_clock_adjtime)
835#define __NR_clock_getres_time64 406
836__SYSCALL(__NR_clock_getres_time64, sys_clock_getres)
837#define __NR_clock_nanosleep_time64 407
838__SYSCALL(__NR_clock_nanosleep_time64, sys_clock_nanosleep)
839#define __NR_timer_gettime64 408
840__SYSCALL(__NR_timer_gettime64, sys_timer_gettime)
841#define __NR_timer_settime64 409
842__SYSCALL(__NR_timer_settime64, sys_timer_settime)
843#define __NR_timerfd_gettime64 410
844__SYSCALL(__NR_timerfd_gettime64, sys_timerfd_gettime)
845#define __NR_timerfd_settime64 411
846__SYSCALL(__NR_timerfd_settime64, sys_timerfd_settime)
847#define __NR_utimensat_time64 412
848__SYSCALL(__NR_utimensat_time64, sys_utimensat)
849#define __NR_pselect6_time64 413
850__SYSCALL(__NR_pselect6_time64, compat_sys_pselect6_time64)
851#define __NR_ppoll_time64 414
852__SYSCALL(__NR_ppoll_time64, compat_sys_ppoll_time64)
853#define __NR_io_pgetevents_time64 416
854__SYSCALL(__NR_io_pgetevents_time64, sys_io_pgetevents)
855#define __NR_recvmmsg_time64 417
856__SYSCALL(__NR_recvmmsg_time64, compat_sys_recvmmsg_time64)
857#define __NR_mq_timedsend_time64 418
858__SYSCALL(__NR_mq_timedsend_time64, sys_mq_timedsend)
859#define __NR_mq_timedreceive_time64 419
860__SYSCALL(__NR_mq_timedreceive_time64, sys_mq_timedreceive)
861#define __NR_semtimedop_time64 420
862__SYSCALL(__NR_semtimedop_time64, sys_semtimedop)
863#define __NR_rt_sigtimedwait_time64 421
864__SYSCALL(__NR_rt_sigtimedwait_time64, compat_sys_rt_sigtimedwait_time64)
865#define __NR_futex_time64 422
866__SYSCALL(__NR_futex_time64, sys_futex)
867#define __NR_sched_rr_get_interval_time64 423
868__SYSCALL(__NR_sched_rr_get_interval_time64, sys_sched_rr_get_interval)
828 869
829/* 870/*
830 * Please add new compat syscalls above this comment and update 871 * Please add new compat syscalls above this comment and update
diff --git a/arch/ia64/kernel/syscalls/syscall.tbl b/arch/ia64/kernel/syscalls/syscall.tbl
index 52319006de0d..ab9cda5f6136 100644
--- a/arch/ia64/kernel/syscalls/syscall.tbl
+++ b/arch/ia64/kernel/syscalls/syscall.tbl
@@ -343,3 +343,4 @@
343331 common pkey_alloc sys_pkey_alloc 343331 common pkey_alloc sys_pkey_alloc
344332 common pkey_free sys_pkey_free 344332 common pkey_free sys_pkey_free
345333 common rseq sys_rseq 345333 common rseq sys_rseq
346# 334 through 423 are reserved to sync up with other architectures
diff --git a/arch/m68k/include/asm/unistd.h b/arch/m68k/include/asm/unistd.h
index 49d5de18646b..2e0047cf86f8 100644
--- a/arch/m68k/include/asm/unistd.h
+++ b/arch/m68k/include/asm/unistd.h
@@ -15,8 +15,8 @@
15#define __ARCH_WANT_SYS_IPC 15#define __ARCH_WANT_SYS_IPC
16#define __ARCH_WANT_SYS_PAUSE 16#define __ARCH_WANT_SYS_PAUSE
17#define __ARCH_WANT_SYS_SIGNAL 17#define __ARCH_WANT_SYS_SIGNAL
18#define __ARCH_WANT_SYS_TIME 18#define __ARCH_WANT_SYS_TIME32
19#define __ARCH_WANT_SYS_UTIME 19#define __ARCH_WANT_SYS_UTIME32
20#define __ARCH_WANT_SYS_WAITPID 20#define __ARCH_WANT_SYS_WAITPID
21#define __ARCH_WANT_SYS_SOCKETCALL 21#define __ARCH_WANT_SYS_SOCKETCALL
22#define __ARCH_WANT_SYS_FADVISE64 22#define __ARCH_WANT_SYS_FADVISE64
diff --git a/arch/m68k/kernel/syscalls/syscall.tbl b/arch/m68k/kernel/syscalls/syscall.tbl
index bffffb202f8a..125c14178979 100644
--- a/arch/m68k/kernel/syscalls/syscall.tbl
+++ b/arch/m68k/kernel/syscalls/syscall.tbl
@@ -20,7 +20,7 @@
2010 common unlink sys_unlink 2010 common unlink sys_unlink
2111 common execve sys_execve 2111 common execve sys_execve
2212 common chdir sys_chdir 2212 common chdir sys_chdir
2313 common time sys_time 2313 common time sys_time32
2414 common mknod sys_mknod 2414 common mknod sys_mknod
2515 common chmod sys_chmod 2515 common chmod sys_chmod
2616 common chown sys_chown16 2616 common chown sys_chown16
@@ -32,12 +32,12 @@
3222 common umount sys_oldumount 3222 common umount sys_oldumount
3323 common setuid sys_setuid16 3323 common setuid sys_setuid16
3424 common getuid sys_getuid16 3424 common getuid sys_getuid16
3525 common stime sys_stime 3525 common stime sys_stime32
3626 common ptrace sys_ptrace 3626 common ptrace sys_ptrace
3727 common alarm sys_alarm 3727 common alarm sys_alarm
3828 common oldfstat sys_fstat 3828 common oldfstat sys_fstat
3929 common pause sys_pause 3929 common pause sys_pause
4030 common utime sys_utime 4030 common utime sys_utime32
41# 31 was stty 41# 31 was stty
42# 32 was gtty 42# 32 was gtty
4333 common access sys_access 4333 common access sys_access
@@ -131,7 +131,7 @@
131121 common setdomainname sys_setdomainname 131121 common setdomainname sys_setdomainname
132122 common uname sys_newuname 132122 common uname sys_newuname
133123 common cacheflush sys_cacheflush 133123 common cacheflush sys_cacheflush
134124 common adjtimex sys_adjtimex 134124 common adjtimex sys_adjtimex_time32
135125 common mprotect sys_mprotect 135125 common mprotect sys_mprotect
136126 common sigprocmask sys_sigprocmask 136126 common sigprocmask sys_sigprocmask
137127 common create_module sys_ni_syscall 137127 common create_module sys_ni_syscall
@@ -168,8 +168,8 @@
168158 common sched_yield sys_sched_yield 168158 common sched_yield sys_sched_yield
169159 common sched_get_priority_max sys_sched_get_priority_max 169159 common sched_get_priority_max sys_sched_get_priority_max
170160 common sched_get_priority_min sys_sched_get_priority_min 170160 common sched_get_priority_min sys_sched_get_priority_min
171161 common sched_rr_get_interval sys_sched_rr_get_interval 171161 common sched_rr_get_interval sys_sched_rr_get_interval_time32
172162 common nanosleep sys_nanosleep 172162 common nanosleep sys_nanosleep_time32
173163 common mremap sys_mremap 173163 common mremap sys_mremap
174164 common setresuid sys_setresuid16 174164 common setresuid sys_setresuid16
175165 common getresuid sys_getresuid16 175165 common getresuid sys_getresuid16
@@ -184,7 +184,7 @@
184174 common rt_sigaction sys_rt_sigaction 184174 common rt_sigaction sys_rt_sigaction
185175 common rt_sigprocmask sys_rt_sigprocmask 185175 common rt_sigprocmask sys_rt_sigprocmask
186176 common rt_sigpending sys_rt_sigpending 186176 common rt_sigpending sys_rt_sigpending
187177 common rt_sigtimedwait sys_rt_sigtimedwait 187177 common rt_sigtimedwait sys_rt_sigtimedwait_time32
188178 common rt_sigqueueinfo sys_rt_sigqueueinfo 188178 common rt_sigqueueinfo sys_rt_sigqueueinfo
189179 common rt_sigsuspend sys_rt_sigsuspend 189179 common rt_sigsuspend sys_rt_sigsuspend
190180 common pread64 sys_pread64 190180 common pread64 sys_pread64
@@ -242,7 +242,7 @@
242232 common removexattr sys_removexattr 242232 common removexattr sys_removexattr
243233 common lremovexattr sys_lremovexattr 243233 common lremovexattr sys_lremovexattr
244234 common fremovexattr sys_fremovexattr 244234 common fremovexattr sys_fremovexattr
245235 common futex sys_futex 245235 common futex sys_futex_time32
246236 common sendfile64 sys_sendfile64 246236 common sendfile64 sys_sendfile64
247237 common mincore sys_mincore 247237 common mincore sys_mincore
248238 common madvise sys_madvise 248238 common madvise sys_madvise
@@ -250,7 +250,7 @@
250240 common readahead sys_readahead 250240 common readahead sys_readahead
251241 common io_setup sys_io_setup 251241 common io_setup sys_io_setup
252242 common io_destroy sys_io_destroy 252242 common io_destroy sys_io_destroy
253243 common io_getevents sys_io_getevents 253243 common io_getevents sys_io_getevents_time32
254244 common io_submit sys_io_submit 254244 common io_submit sys_io_submit
255245 common io_cancel sys_io_cancel 255245 common io_cancel sys_io_cancel
256246 common fadvise64 sys_fadvise64 256246 common fadvise64 sys_fadvise64
@@ -262,26 +262,26 @@
262252 common remap_file_pages sys_remap_file_pages 262252 common remap_file_pages sys_remap_file_pages
263253 common set_tid_address sys_set_tid_address 263253 common set_tid_address sys_set_tid_address
264254 common timer_create sys_timer_create 264254 common timer_create sys_timer_create
265255 common timer_settime sys_timer_settime 265255 common timer_settime sys_timer_settime32
266256 common timer_gettime sys_timer_gettime 266256 common timer_gettime sys_timer_gettime32
267257 common timer_getoverrun sys_timer_getoverrun 267257 common timer_getoverrun sys_timer_getoverrun
268258 common timer_delete sys_timer_delete 268258 common timer_delete sys_timer_delete
269259 common clock_settime sys_clock_settime 269259 common clock_settime sys_clock_settime32
270260 common clock_gettime sys_clock_gettime 270260 common clock_gettime sys_clock_gettime32
271261 common clock_getres sys_clock_getres 271261 common clock_getres sys_clock_getres_time32
272262 common clock_nanosleep sys_clock_nanosleep 272262 common clock_nanosleep sys_clock_nanosleep_time32
273263 common statfs64 sys_statfs64 273263 common statfs64 sys_statfs64
274264 common fstatfs64 sys_fstatfs64 274264 common fstatfs64 sys_fstatfs64
275265 common tgkill sys_tgkill 275265 common tgkill sys_tgkill
276266 common utimes sys_utimes 276266 common utimes sys_utimes_time32
277267 common fadvise64_64 sys_fadvise64_64 277267 common fadvise64_64 sys_fadvise64_64
278268 common mbind sys_mbind 278268 common mbind sys_mbind
279269 common get_mempolicy sys_get_mempolicy 279269 common get_mempolicy sys_get_mempolicy
280270 common set_mempolicy sys_set_mempolicy 280270 common set_mempolicy sys_set_mempolicy
281271 common mq_open sys_mq_open 281271 common mq_open sys_mq_open
282272 common mq_unlink sys_mq_unlink 282272 common mq_unlink sys_mq_unlink
283273 common mq_timedsend sys_mq_timedsend 283273 common mq_timedsend sys_mq_timedsend_time32
284274 common mq_timedreceive sys_mq_timedreceive 284274 common mq_timedreceive sys_mq_timedreceive_time32
285275 common mq_notify sys_mq_notify 285275 common mq_notify sys_mq_notify
286276 common mq_getsetattr sys_mq_getsetattr 286276 common mq_getsetattr sys_mq_getsetattr
287277 common waitid sys_waitid 287277 common waitid sys_waitid
@@ -299,7 +299,7 @@
299289 common mkdirat sys_mkdirat 299289 common mkdirat sys_mkdirat
300290 common mknodat sys_mknodat 300290 common mknodat sys_mknodat
301291 common fchownat sys_fchownat 301291 common fchownat sys_fchownat
302292 common futimesat sys_futimesat 302292 common futimesat sys_futimesat_time32
303293 common fstatat64 sys_fstatat64 303293 common fstatat64 sys_fstatat64
304294 common unlinkat sys_unlinkat 304294 common unlinkat sys_unlinkat
305295 common renameat sys_renameat 305295 common renameat sys_renameat
@@ -308,8 +308,8 @@
308298 common readlinkat sys_readlinkat 308298 common readlinkat sys_readlinkat
309299 common fchmodat sys_fchmodat 309299 common fchmodat sys_fchmodat
310300 common faccessat sys_faccessat 310300 common faccessat sys_faccessat
311301 common pselect6 sys_pselect6 311301 common pselect6 sys_pselect6_time32
312302 common ppoll sys_ppoll 312302 common ppoll sys_ppoll_time32
313303 common unshare sys_unshare 313303 common unshare sys_unshare
314304 common set_robust_list sys_set_robust_list 314304 common set_robust_list sys_set_robust_list
315305 common get_robust_list sys_get_robust_list 315305 common get_robust_list sys_get_robust_list
@@ -323,13 +323,13 @@
323313 common kexec_load sys_kexec_load 323313 common kexec_load sys_kexec_load
324314 common getcpu sys_getcpu 324314 common getcpu sys_getcpu
325315 common epoll_pwait sys_epoll_pwait 325315 common epoll_pwait sys_epoll_pwait
326316 common utimensat sys_utimensat 326316 common utimensat sys_utimensat_time32
327317 common signalfd sys_signalfd 327317 common signalfd sys_signalfd
328318 common timerfd_create sys_timerfd_create 328318 common timerfd_create sys_timerfd_create
329319 common eventfd sys_eventfd 329319 common eventfd sys_eventfd
330320 common fallocate sys_fallocate 330320 common fallocate sys_fallocate
331321 common timerfd_settime sys_timerfd_settime 331321 common timerfd_settime sys_timerfd_settime32
332322 common timerfd_gettime sys_timerfd_gettime 332322 common timerfd_gettime sys_timerfd_gettime32
333323 common signalfd4 sys_signalfd4 333323 common signalfd4 sys_signalfd4
334324 common eventfd2 sys_eventfd2 334324 common eventfd2 sys_eventfd2
335325 common epoll_create1 sys_epoll_create1 335325 common epoll_create1 sys_epoll_create1
@@ -349,7 +349,7 @@
349339 common prlimit64 sys_prlimit64 349339 common prlimit64 sys_prlimit64
350340 common name_to_handle_at sys_name_to_handle_at 350340 common name_to_handle_at sys_name_to_handle_at
351341 common open_by_handle_at sys_open_by_handle_at 351341 common open_by_handle_at sys_open_by_handle_at
352342 common clock_adjtime sys_clock_adjtime 352342 common clock_adjtime sys_clock_adjtime32
353343 common syncfs sys_syncfs 353343 common syncfs sys_syncfs
354344 common setns sys_setns 354344 common setns sys_setns
355345 common process_vm_readv sys_process_vm_readv 355345 common process_vm_readv sys_process_vm_readv
@@ -378,7 +378,7 @@
378368 common recvfrom sys_recvfrom 378368 common recvfrom sys_recvfrom
379369 common recvmsg sys_recvmsg 379369 common recvmsg sys_recvmsg
380370 common shutdown sys_shutdown 380370 common shutdown sys_shutdown
381371 common recvmmsg sys_recvmmsg 381371 common recvmmsg sys_recvmmsg_time32
382372 common sendmmsg sys_sendmmsg 382372 common sendmmsg sys_sendmmsg
383373 common userfaultfd sys_userfaultfd 383373 common userfaultfd sys_userfaultfd
384374 common membarrier sys_membarrier 384374 common membarrier sys_membarrier
@@ -403,3 +403,23 @@
403400 common msgsnd sys_msgsnd 403400 common msgsnd sys_msgsnd
404401 common msgrcv sys_msgrcv 404401 common msgrcv sys_msgrcv
405402 common msgctl sys_msgctl 405402 common msgctl sys_msgctl
406403 common clock_gettime64 sys_clock_gettime
407404 common clock_settime64 sys_clock_settime
408405 common clock_adjtime64 sys_clock_adjtime
409406 common clock_getres_time64 sys_clock_getres
410407 common clock_nanosleep_time64 sys_clock_nanosleep
411408 common timer_gettime64 sys_timer_gettime
412409 common timer_settime64 sys_timer_settime
413410 common timerfd_gettime64 sys_timerfd_gettime
414411 common timerfd_settime64 sys_timerfd_settime
415412 common utimensat_time64 sys_utimensat
416413 common pselect6_time64 sys_pselect6
417414 common ppoll_time64 sys_ppoll
418416 common io_pgetevents_time64 sys_io_pgetevents
419417 common recvmmsg_time64 sys_recvmmsg
420418 common mq_timedsend_time64 sys_mq_timedsend
421419 common mq_timedreceive_time64 sys_mq_timedreceive
422420 common semtimedop_time64 sys_semtimedop
423421 common rt_sigtimedwait_time64 sys_rt_sigtimedwait
424422 common futex_time64 sys_futex
425423 common sched_rr_get_interval_time64 sys_sched_rr_get_interval
diff --git a/arch/microblaze/include/asm/unistd.h b/arch/microblaze/include/asm/unistd.h
index 9b7c2c4eaf12..d79d35ac6253 100644
--- a/arch/microblaze/include/asm/unistd.h
+++ b/arch/microblaze/include/asm/unistd.h
@@ -21,8 +21,8 @@
21#define __ARCH_WANT_SYS_GETHOSTNAME 21#define __ARCH_WANT_SYS_GETHOSTNAME
22#define __ARCH_WANT_SYS_PAUSE 22#define __ARCH_WANT_SYS_PAUSE
23#define __ARCH_WANT_SYS_SIGNAL 23#define __ARCH_WANT_SYS_SIGNAL
24#define __ARCH_WANT_SYS_TIME 24#define __ARCH_WANT_SYS_TIME32
25#define __ARCH_WANT_SYS_UTIME 25#define __ARCH_WANT_SYS_UTIME32
26#define __ARCH_WANT_SYS_WAITPID 26#define __ARCH_WANT_SYS_WAITPID
27#define __ARCH_WANT_SYS_SOCKETCALL 27#define __ARCH_WANT_SYS_SOCKETCALL
28#define __ARCH_WANT_SYS_FADVISE64 28#define __ARCH_WANT_SYS_FADVISE64
diff --git a/arch/microblaze/kernel/syscalls/syscall.tbl b/arch/microblaze/kernel/syscalls/syscall.tbl
index 7cc0f9554da3..8ee3a8c18498 100644
--- a/arch/microblaze/kernel/syscalls/syscall.tbl
+++ b/arch/microblaze/kernel/syscalls/syscall.tbl
@@ -20,7 +20,7 @@
2010 common unlink sys_unlink 2010 common unlink sys_unlink
2111 common execve sys_execve 2111 common execve sys_execve
2212 common chdir sys_chdir 2212 common chdir sys_chdir
2313 common time sys_time 2313 common time sys_time32
2414 common mknod sys_mknod 2414 common mknod sys_mknod
2515 common chmod sys_chmod 2515 common chmod sys_chmod
2616 common lchown sys_lchown 2616 common lchown sys_lchown
@@ -32,12 +32,12 @@
3222 common umount sys_oldumount 3222 common umount sys_oldumount
3323 common setuid sys_setuid 3323 common setuid sys_setuid
3424 common getuid sys_getuid 3424 common getuid sys_getuid
3525 common stime sys_stime 3525 common stime sys_stime32
3626 common ptrace sys_ptrace 3626 common ptrace sys_ptrace
3727 common alarm sys_alarm 3727 common alarm sys_alarm
3828 common oldfstat sys_ni_syscall 3828 common oldfstat sys_ni_syscall
3929 common pause sys_pause 3929 common pause sys_pause
4030 common utime sys_utime 4030 common utime sys_utime32
4131 common stty sys_ni_syscall 4131 common stty sys_ni_syscall
4232 common gtty sys_ni_syscall 4232 common gtty sys_ni_syscall
4333 common access sys_access 4333 common access sys_access
@@ -131,7 +131,7 @@
131121 common setdomainname sys_setdomainname 131121 common setdomainname sys_setdomainname
132122 common uname sys_newuname 132122 common uname sys_newuname
133123 common modify_ldt sys_ni_syscall 133123 common modify_ldt sys_ni_syscall
134124 common adjtimex sys_adjtimex 134124 common adjtimex sys_adjtimex_time32
135125 common mprotect sys_mprotect 135125 common mprotect sys_mprotect
136126 common sigprocmask sys_sigprocmask 136126 common sigprocmask sys_sigprocmask
137127 common create_module sys_ni_syscall 137127 common create_module sys_ni_syscall
@@ -168,8 +168,8 @@
168158 common sched_yield sys_sched_yield 168158 common sched_yield sys_sched_yield
169159 common sched_get_priority_max sys_sched_get_priority_max 169159 common sched_get_priority_max sys_sched_get_priority_max
170160 common sched_get_priority_min sys_sched_get_priority_min 170160 common sched_get_priority_min sys_sched_get_priority_min
171161 common sched_rr_get_interval sys_sched_rr_get_interval 171161 common sched_rr_get_interval sys_sched_rr_get_interval_time32
172162 common nanosleep sys_nanosleep 172162 common nanosleep sys_nanosleep_time32
173163 common mremap sys_mremap 173163 common mremap sys_mremap
174164 common setresuid sys_setresuid 174164 common setresuid sys_setresuid
175165 common getresuid sys_getresuid 175165 common getresuid sys_getresuid
@@ -184,7 +184,7 @@
184174 common rt_sigaction sys_rt_sigaction 184174 common rt_sigaction sys_rt_sigaction
185175 common rt_sigprocmask sys_rt_sigprocmask 185175 common rt_sigprocmask sys_rt_sigprocmask
186176 common rt_sigpending sys_rt_sigpending 186176 common rt_sigpending sys_rt_sigpending
187177 common rt_sigtimedwait sys_rt_sigtimedwait 187177 common rt_sigtimedwait sys_rt_sigtimedwait_time32
188178 common rt_sigqueueinfo sys_rt_sigqueueinfo 188178 common rt_sigqueueinfo sys_rt_sigqueueinfo
189179 common rt_sigsuspend sys_rt_sigsuspend 189179 common rt_sigsuspend sys_rt_sigsuspend
190180 common pread64 sys_pread64 190180 common pread64 sys_pread64
@@ -247,14 +247,14 @@
247237 common fremovexattr sys_fremovexattr 247237 common fremovexattr sys_fremovexattr
248238 common tkill sys_tkill 248238 common tkill sys_tkill
249239 common sendfile64 sys_sendfile64 249239 common sendfile64 sys_sendfile64
250240 common futex sys_futex 250240 common futex sys_futex_time32
251241 common sched_setaffinity sys_sched_setaffinity 251241 common sched_setaffinity sys_sched_setaffinity
252242 common sched_getaffinity sys_sched_getaffinity 252242 common sched_getaffinity sys_sched_getaffinity
253243 common set_thread_area sys_ni_syscall 253243 common set_thread_area sys_ni_syscall
254244 common get_thread_area sys_ni_syscall 254244 common get_thread_area sys_ni_syscall
255245 common io_setup sys_io_setup 255245 common io_setup sys_io_setup
256246 common io_destroy sys_io_destroy 256246 common io_destroy sys_io_destroy
257247 common io_getevents sys_io_getevents 257247 common io_getevents sys_io_getevents_time32
258248 common io_submit sys_io_submit 258248 common io_submit sys_io_submit
259249 common io_cancel sys_io_cancel 259249 common io_cancel sys_io_cancel
260250 common fadvise64 sys_fadvise64 260250 common fadvise64 sys_fadvise64
@@ -267,18 +267,18 @@
267257 common remap_file_pages sys_remap_file_pages 267257 common remap_file_pages sys_remap_file_pages
268258 common set_tid_address sys_set_tid_address 268258 common set_tid_address sys_set_tid_address
269259 common timer_create sys_timer_create 269259 common timer_create sys_timer_create
270260 common timer_settime sys_timer_settime 270260 common timer_settime sys_timer_settime32
271261 common timer_gettime sys_timer_gettime 271261 common timer_gettime sys_timer_gettime32
272262 common timer_getoverrun sys_timer_getoverrun 272262 common timer_getoverrun sys_timer_getoverrun
273263 common timer_delete sys_timer_delete 273263 common timer_delete sys_timer_delete
274264 common clock_settime sys_clock_settime 274264 common clock_settime sys_clock_settime32
275265 common clock_gettime sys_clock_gettime 275265 common clock_gettime sys_clock_gettime32
276266 common clock_getres sys_clock_getres 276266 common clock_getres sys_clock_getres_time32
277267 common clock_nanosleep sys_clock_nanosleep 277267 common clock_nanosleep sys_clock_nanosleep_time32
278268 common statfs64 sys_statfs64 278268 common statfs64 sys_statfs64
279269 common fstatfs64 sys_fstatfs64 279269 common fstatfs64 sys_fstatfs64
280270 common tgkill sys_tgkill 280270 common tgkill sys_tgkill
281271 common utimes sys_utimes 281271 common utimes sys_utimes_time32
282272 common fadvise64_64 sys_fadvise64_64 282272 common fadvise64_64 sys_fadvise64_64
283273 common vserver sys_ni_syscall 283273 common vserver sys_ni_syscall
284274 common mbind sys_mbind 284274 common mbind sys_mbind
@@ -286,8 +286,8 @@
286276 common set_mempolicy sys_set_mempolicy 286276 common set_mempolicy sys_set_mempolicy
287277 common mq_open sys_mq_open 287277 common mq_open sys_mq_open
288278 common mq_unlink sys_mq_unlink 288278 common mq_unlink sys_mq_unlink
289279 common mq_timedsend sys_mq_timedsend 289279 common mq_timedsend sys_mq_timedsend_time32
290280 common mq_timedreceive sys_mq_timedreceive 290280 common mq_timedreceive sys_mq_timedreceive_time32
291281 common mq_notify sys_mq_notify 291281 common mq_notify sys_mq_notify
292282 common mq_getsetattr sys_mq_getsetattr 292282 common mq_getsetattr sys_mq_getsetattr
293283 common kexec_load sys_kexec_load 293283 common kexec_load sys_kexec_load
@@ -306,7 +306,7 @@
306296 common mkdirat sys_mkdirat 306296 common mkdirat sys_mkdirat
307297 common mknodat sys_mknodat 307297 common mknodat sys_mknodat
308298 common fchownat sys_fchownat 308298 common fchownat sys_fchownat
309299 common futimesat sys_futimesat 309299 common futimesat sys_futimesat_time32
310300 common fstatat64 sys_fstatat64 310300 common fstatat64 sys_fstatat64
311301 common unlinkat sys_unlinkat 311301 common unlinkat sys_unlinkat
312302 common renameat sys_renameat 312302 common renameat sys_renameat
@@ -315,8 +315,8 @@
315305 common readlinkat sys_readlinkat 315305 common readlinkat sys_readlinkat
316306 common fchmodat sys_fchmodat 316306 common fchmodat sys_fchmodat
317307 common faccessat sys_faccessat 317307 common faccessat sys_faccessat
318308 common pselect6 sys_pselect6 318308 common pselect6 sys_pselect6_time32
319309 common ppoll sys_ppoll 319309 common ppoll sys_ppoll_time32
320310 common unshare sys_unshare 320310 common unshare sys_unshare
321311 common set_robust_list sys_set_robust_list 321311 common set_robust_list sys_set_robust_list
322312 common get_robust_list sys_get_robust_list 322312 common get_robust_list sys_get_robust_list
@@ -327,14 +327,14 @@
327317 common move_pages sys_move_pages 327317 common move_pages sys_move_pages
328318 common getcpu sys_getcpu 328318 common getcpu sys_getcpu
329319 common epoll_pwait sys_epoll_pwait 329319 common epoll_pwait sys_epoll_pwait
330320 common utimensat sys_utimensat 330320 common utimensat sys_utimensat_time32
331321 common signalfd sys_signalfd 331321 common signalfd sys_signalfd
332322 common timerfd_create sys_timerfd_create 332322 common timerfd_create sys_timerfd_create
333323 common eventfd sys_eventfd 333323 common eventfd sys_eventfd
334324 common fallocate sys_fallocate 334324 common fallocate sys_fallocate
335325 common semtimedop sys_semtimedop 335325 common semtimedop sys_semtimedop_time32
336326 common timerfd_settime sys_timerfd_settime 336326 common timerfd_settime sys_timerfd_settime32
337327 common timerfd_gettime sys_timerfd_gettime 337327 common timerfd_gettime sys_timerfd_gettime32
338328 common semctl sys_old_semctl 338328 common semctl sys_old_semctl
339329 common semget sys_semget 339329 common semget sys_semget
340330 common semop sys_semop 340330 common semop sys_semop
@@ -374,13 +374,13 @@
374364 common pwritev sys_pwritev 374364 common pwritev sys_pwritev
375365 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo 375365 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo
376366 common perf_event_open sys_perf_event_open 376366 common perf_event_open sys_perf_event_open
377367 common recvmmsg sys_recvmmsg 377367 common recvmmsg sys_recvmmsg_time32
378368 common fanotify_init sys_fanotify_init 378368 common fanotify_init sys_fanotify_init
379369 common fanotify_mark sys_fanotify_mark 379369 common fanotify_mark sys_fanotify_mark
380370 common prlimit64 sys_prlimit64 380370 common prlimit64 sys_prlimit64
381371 common name_to_handle_at sys_name_to_handle_at 381371 common name_to_handle_at sys_name_to_handle_at
382372 common open_by_handle_at sys_open_by_handle_at 382372 common open_by_handle_at sys_open_by_handle_at
383373 common clock_adjtime sys_clock_adjtime 383373 common clock_adjtime sys_clock_adjtime32
384374 common syncfs sys_syncfs 384374 common syncfs sys_syncfs
385375 common setns sys_setns 385375 common setns sys_setns
386376 common sendmmsg sys_sendmmsg 386376 common sendmmsg sys_sendmmsg
@@ -406,5 +406,26 @@
406396 common pkey_alloc sys_pkey_alloc 406396 common pkey_alloc sys_pkey_alloc
407397 common pkey_free sys_pkey_free 407397 common pkey_free sys_pkey_free
408398 common statx sys_statx 408398 common statx sys_statx
409399 common io_pgetevents sys_io_pgetevents 409399 common io_pgetevents sys_io_pgetevents_time32
410400 common rseq sys_rseq 410400 common rseq sys_rseq
411# 401 and 402 are unused
412403 common clock_gettime64 sys_clock_gettime
413404 common clock_settime64 sys_clock_settime
414405 common clock_adjtime64 sys_clock_adjtime
415406 common clock_getres_time64 sys_clock_getres
416407 common clock_nanosleep_time64 sys_clock_nanosleep
417408 common timer_gettime64 sys_timer_gettime
418409 common timer_settime64 sys_timer_settime
419410 common timerfd_gettime64 sys_timerfd_gettime
420411 common timerfd_settime64 sys_timerfd_settime
421412 common utimensat_time64 sys_utimensat
422413 common pselect6_time64 sys_pselect6
423414 common ppoll_time64 sys_ppoll
424416 common io_pgetevents_time64 sys_io_pgetevents
425417 common recvmmsg_time64 sys_recvmmsg
426418 common mq_timedsend_time64 sys_mq_timedsend
427419 common mq_timedreceive_time64 sys_mq_timedreceive
428420 common semtimedop_time64 sys_semtimedop
429421 common rt_sigtimedwait_time64 sys_rt_sigtimedwait
430422 common futex_time64 sys_futex
431423 common sched_rr_get_interval_time64 sys_sched_rr_get_interval
diff --git a/arch/mips/include/asm/unistd.h b/arch/mips/include/asm/unistd.h
index 75c590229a23..071053ece677 100644
--- a/arch/mips/include/asm/unistd.h
+++ b/arch/mips/include/asm/unistd.h
@@ -45,10 +45,10 @@
45#define __ARCH_WANT_SYS_SIGPROCMASK 45#define __ARCH_WANT_SYS_SIGPROCMASK
46# ifdef CONFIG_32BIT 46# ifdef CONFIG_32BIT
47# define __ARCH_WANT_STAT64 47# define __ARCH_WANT_STAT64
48# define __ARCH_WANT_SYS_TIME 48# define __ARCH_WANT_SYS_TIME32
49# endif 49# endif
50# ifdef CONFIG_MIPS32_O32 50# ifdef CONFIG_MIPS32_O32
51# define __ARCH_WANT_COMPAT_SYS_TIME 51# define __ARCH_WANT_SYS_TIME32
52# endif 52# endif
53#define __ARCH_WANT_SYS_FORK 53#define __ARCH_WANT_SYS_FORK
54#define __ARCH_WANT_SYS_CLONE 54#define __ARCH_WANT_SYS_CLONE
diff --git a/arch/mips/kernel/syscalls/syscall_n32.tbl b/arch/mips/kernel/syscalls/syscall_n32.tbl
index cc134b1211aa..15f4117900ee 100644
--- a/arch/mips/kernel/syscalls/syscall_n32.tbl
+++ b/arch/mips/kernel/syscalls/syscall_n32.tbl
@@ -41,7 +41,7 @@
4131 n32 dup sys_dup 4131 n32 dup sys_dup
4232 n32 dup2 sys_dup2 4232 n32 dup2 sys_dup2
4333 n32 pause sys_pause 4333 n32 pause sys_pause
4434 n32 nanosleep compat_sys_nanosleep 4434 n32 nanosleep sys_nanosleep_time32
4535 n32 getitimer compat_sys_getitimer 4535 n32 getitimer compat_sys_getitimer
4636 n32 setitimer compat_sys_setitimer 4636 n32 setitimer compat_sys_setitimer
4737 n32 alarm sys_alarm 4737 n32 alarm sys_alarm
@@ -133,11 +133,11 @@
133123 n32 capget sys_capget 133123 n32 capget sys_capget
134124 n32 capset sys_capset 134124 n32 capset sys_capset
135125 n32 rt_sigpending compat_sys_rt_sigpending 135125 n32 rt_sigpending compat_sys_rt_sigpending
136126 n32 rt_sigtimedwait compat_sys_rt_sigtimedwait 136126 n32 rt_sigtimedwait compat_sys_rt_sigtimedwait_time32
137127 n32 rt_sigqueueinfo compat_sys_rt_sigqueueinfo 137127 n32 rt_sigqueueinfo compat_sys_rt_sigqueueinfo
138128 n32 rt_sigsuspend compat_sys_rt_sigsuspend 138128 n32 rt_sigsuspend compat_sys_rt_sigsuspend
139129 n32 sigaltstack compat_sys_sigaltstack 139129 n32 sigaltstack compat_sys_sigaltstack
140130 n32 utime compat_sys_utime 140130 n32 utime sys_utime32
141131 n32 mknod sys_mknod 141131 n32 mknod sys_mknod
142132 n32 personality sys_32_personality 142132 n32 personality sys_32_personality
143133 n32 ustat compat_sys_ustat 143133 n32 ustat compat_sys_ustat
@@ -152,7 +152,7 @@
152142 n32 sched_getscheduler sys_sched_getscheduler 152142 n32 sched_getscheduler sys_sched_getscheduler
153143 n32 sched_get_priority_max sys_sched_get_priority_max 153143 n32 sched_get_priority_max sys_sched_get_priority_max
154144 n32 sched_get_priority_min sys_sched_get_priority_min 154144 n32 sched_get_priority_min sys_sched_get_priority_min
155145 n32 sched_rr_get_interval compat_sys_sched_rr_get_interval 155145 n32 sched_rr_get_interval sys_sched_rr_get_interval_time32
156146 n32 mlock sys_mlock 156146 n32 mlock sys_mlock
157147 n32 munlock sys_munlock 157147 n32 munlock sys_munlock
158148 n32 mlockall sys_mlockall 158148 n32 mlockall sys_mlockall
@@ -161,7 +161,7 @@
161151 n32 pivot_root sys_pivot_root 161151 n32 pivot_root sys_pivot_root
162152 n32 _sysctl compat_sys_sysctl 162152 n32 _sysctl compat_sys_sysctl
163153 n32 prctl sys_prctl 163153 n32 prctl sys_prctl
164154 n32 adjtimex compat_sys_adjtimex 164154 n32 adjtimex sys_adjtimex_time32
165155 n32 setrlimit compat_sys_setrlimit 165155 n32 setrlimit compat_sys_setrlimit
166156 n32 chroot sys_chroot 166156 n32 chroot sys_chroot
167157 n32 sync sys_sync 167157 n32 sync sys_sync
@@ -202,7 +202,7 @@
202191 n32 fremovexattr sys_fremovexattr 202191 n32 fremovexattr sys_fremovexattr
203192 n32 tkill sys_tkill 203192 n32 tkill sys_tkill
204193 n32 reserved193 sys_ni_syscall 204193 n32 reserved193 sys_ni_syscall
205194 n32 futex compat_sys_futex 205194 n32 futex sys_futex_time32
206195 n32 sched_setaffinity compat_sys_sched_setaffinity 206195 n32 sched_setaffinity compat_sys_sched_setaffinity
207196 n32 sched_getaffinity compat_sys_sched_getaffinity 207196 n32 sched_getaffinity compat_sys_sched_getaffinity
208197 n32 cacheflush sys_cacheflush 208197 n32 cacheflush sys_cacheflush
@@ -210,7 +210,7 @@
210199 n32 sysmips __sys_sysmips 210199 n32 sysmips __sys_sysmips
211200 n32 io_setup compat_sys_io_setup 211200 n32 io_setup compat_sys_io_setup
212201 n32 io_destroy sys_io_destroy 212201 n32 io_destroy sys_io_destroy
213202 n32 io_getevents compat_sys_io_getevents 213202 n32 io_getevents sys_io_getevents_time32
214203 n32 io_submit compat_sys_io_submit 214203 n32 io_submit compat_sys_io_submit
215204 n32 io_cancel sys_io_cancel 215204 n32 io_cancel sys_io_cancel
216205 n32 exit_group sys_exit_group 216205 n32 exit_group sys_exit_group
@@ -223,29 +223,29 @@
223212 n32 fcntl64 compat_sys_fcntl64 223212 n32 fcntl64 compat_sys_fcntl64
224213 n32 set_tid_address sys_set_tid_address 224213 n32 set_tid_address sys_set_tid_address
225214 n32 restart_syscall sys_restart_syscall 225214 n32 restart_syscall sys_restart_syscall
226215 n32 semtimedop compat_sys_semtimedop 226215 n32 semtimedop sys_semtimedop_time32
227216 n32 fadvise64 sys_fadvise64_64 227216 n32 fadvise64 sys_fadvise64_64
228217 n32 statfs64 compat_sys_statfs64 228217 n32 statfs64 compat_sys_statfs64
229218 n32 fstatfs64 compat_sys_fstatfs64 229218 n32 fstatfs64 compat_sys_fstatfs64
230219 n32 sendfile64 sys_sendfile64 230219 n32 sendfile64 sys_sendfile64
231220 n32 timer_create compat_sys_timer_create 231220 n32 timer_create compat_sys_timer_create
232221 n32 timer_settime compat_sys_timer_settime 232221 n32 timer_settime sys_timer_settime32
233222 n32 timer_gettime compat_sys_timer_gettime 233222 n32 timer_gettime sys_timer_gettime32
234223 n32 timer_getoverrun sys_timer_getoverrun 234223 n32 timer_getoverrun sys_timer_getoverrun
235224 n32 timer_delete sys_timer_delete 235224 n32 timer_delete sys_timer_delete
236225 n32 clock_settime compat_sys_clock_settime 236225 n32 clock_settime sys_clock_settime32
237226 n32 clock_gettime compat_sys_clock_gettime 237226 n32 clock_gettime sys_clock_gettime32
238227 n32 clock_getres compat_sys_clock_getres 238227 n32 clock_getres sys_clock_getres_time32
239228 n32 clock_nanosleep compat_sys_clock_nanosleep 239228 n32 clock_nanosleep sys_clock_nanosleep_time32
240229 n32 tgkill sys_tgkill 240229 n32 tgkill sys_tgkill
241230 n32 utimes compat_sys_utimes 241230 n32 utimes sys_utimes_time32
242231 n32 mbind compat_sys_mbind 242231 n32 mbind compat_sys_mbind
243232 n32 get_mempolicy compat_sys_get_mempolicy 243232 n32 get_mempolicy compat_sys_get_mempolicy
244233 n32 set_mempolicy compat_sys_set_mempolicy 244233 n32 set_mempolicy compat_sys_set_mempolicy
245234 n32 mq_open compat_sys_mq_open 245234 n32 mq_open compat_sys_mq_open
246235 n32 mq_unlink sys_mq_unlink 246235 n32 mq_unlink sys_mq_unlink
247236 n32 mq_timedsend compat_sys_mq_timedsend 247236 n32 mq_timedsend sys_mq_timedsend_time32
248237 n32 mq_timedreceive compat_sys_mq_timedreceive 248237 n32 mq_timedreceive sys_mq_timedreceive_time32
249238 n32 mq_notify compat_sys_mq_notify 249238 n32 mq_notify compat_sys_mq_notify
250239 n32 mq_getsetattr compat_sys_mq_getsetattr 250239 n32 mq_getsetattr compat_sys_mq_getsetattr
251240 n32 vserver sys_ni_syscall 251240 n32 vserver sys_ni_syscall
@@ -263,7 +263,7 @@
263252 n32 mkdirat sys_mkdirat 263252 n32 mkdirat sys_mkdirat
264253 n32 mknodat sys_mknodat 264253 n32 mknodat sys_mknodat
265254 n32 fchownat sys_fchownat 265254 n32 fchownat sys_fchownat
266255 n32 futimesat compat_sys_futimesat 266255 n32 futimesat sys_futimesat_time32
267256 n32 newfstatat sys_newfstatat 267256 n32 newfstatat sys_newfstatat
268257 n32 unlinkat sys_unlinkat 268257 n32 unlinkat sys_unlinkat
269258 n32 renameat sys_renameat 269258 n32 renameat sys_renameat
@@ -272,8 +272,8 @@
272261 n32 readlinkat sys_readlinkat 272261 n32 readlinkat sys_readlinkat
273262 n32 fchmodat sys_fchmodat 273262 n32 fchmodat sys_fchmodat
274263 n32 faccessat sys_faccessat 274263 n32 faccessat sys_faccessat
275264 n32 pselect6 compat_sys_pselect6 275264 n32 pselect6 compat_sys_pselect6_time32
276265 n32 ppoll compat_sys_ppoll 276265 n32 ppoll compat_sys_ppoll_time32
277266 n32 unshare sys_unshare 277266 n32 unshare sys_unshare
278267 n32 splice sys_splice 278267 n32 splice sys_splice
279268 n32 sync_file_range sys_sync_file_range 279268 n32 sync_file_range sys_sync_file_range
@@ -287,14 +287,14 @@
287276 n32 epoll_pwait compat_sys_epoll_pwait 287276 n32 epoll_pwait compat_sys_epoll_pwait
288277 n32 ioprio_set sys_ioprio_set 288277 n32 ioprio_set sys_ioprio_set
289278 n32 ioprio_get sys_ioprio_get 289278 n32 ioprio_get sys_ioprio_get
290279 n32 utimensat compat_sys_utimensat 290279 n32 utimensat sys_utimensat_time32
291280 n32 signalfd compat_sys_signalfd 291280 n32 signalfd compat_sys_signalfd
292281 n32 timerfd sys_ni_syscall 292281 n32 timerfd sys_ni_syscall
293282 n32 eventfd sys_eventfd 293282 n32 eventfd sys_eventfd
294283 n32 fallocate sys_fallocate 294283 n32 fallocate sys_fallocate
295284 n32 timerfd_create sys_timerfd_create 295284 n32 timerfd_create sys_timerfd_create
296285 n32 timerfd_gettime compat_sys_timerfd_gettime 296285 n32 timerfd_gettime sys_timerfd_gettime32
297286 n32 timerfd_settime compat_sys_timerfd_settime 297286 n32 timerfd_settime sys_timerfd_settime32
298287 n32 signalfd4 compat_sys_signalfd4 298287 n32 signalfd4 compat_sys_signalfd4
299288 n32 eventfd2 sys_eventfd2 299288 n32 eventfd2 sys_eventfd2
300289 n32 epoll_create1 sys_epoll_create1 300289 n32 epoll_create1 sys_epoll_create1
@@ -306,14 +306,14 @@
306295 n32 rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo 306295 n32 rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo
307296 n32 perf_event_open sys_perf_event_open 307296 n32 perf_event_open sys_perf_event_open
308297 n32 accept4 sys_accept4 308297 n32 accept4 sys_accept4
309298 n32 recvmmsg compat_sys_recvmmsg 309298 n32 recvmmsg compat_sys_recvmmsg_time32
310299 n32 getdents64 sys_getdents64 310299 n32 getdents64 sys_getdents64
311300 n32 fanotify_init sys_fanotify_init 311300 n32 fanotify_init sys_fanotify_init
312301 n32 fanotify_mark sys_fanotify_mark 312301 n32 fanotify_mark sys_fanotify_mark
313302 n32 prlimit64 sys_prlimit64 313302 n32 prlimit64 sys_prlimit64
314303 n32 name_to_handle_at sys_name_to_handle_at 314303 n32 name_to_handle_at sys_name_to_handle_at
315304 n32 open_by_handle_at sys_open_by_handle_at 315304 n32 open_by_handle_at sys_open_by_handle_at
316305 n32 clock_adjtime compat_sys_clock_adjtime 316305 n32 clock_adjtime sys_clock_adjtime32
317306 n32 syncfs sys_syncfs 317306 n32 syncfs sys_syncfs
318307 n32 sendmmsg compat_sys_sendmmsg 318307 n32 sendmmsg compat_sys_sendmmsg
319308 n32 setns sys_setns 319308 n32 setns sys_setns
@@ -341,3 +341,24 @@
341330 n32 statx sys_statx 341330 n32 statx sys_statx
342331 n32 rseq sys_rseq 342331 n32 rseq sys_rseq
343332 n32 io_pgetevents compat_sys_io_pgetevents 343332 n32 io_pgetevents compat_sys_io_pgetevents
344# 333 through 402 are unassigned to sync up with generic numbers
345403 n32 clock_gettime64 sys_clock_gettime
346404 n32 clock_settime64 sys_clock_settime
347405 n32 clock_adjtime64 sys_clock_adjtime
348406 n32 clock_getres_time64 sys_clock_getres
349407 n32 clock_nanosleep_time64 sys_clock_nanosleep
350408 n32 timer_gettime64 sys_timer_gettime
351409 n32 timer_settime64 sys_timer_settime
352410 n32 timerfd_gettime64 sys_timerfd_gettime
353411 n32 timerfd_settime64 sys_timerfd_settime
354412 n32 utimensat_time64 sys_utimensat
355413 n32 pselect6_time64 compat_sys_pselect6_time64
356414 n32 ppoll_time64 compat_sys_ppoll_time64
357416 n32 io_pgetevents_time64 sys_io_pgetevents
358417 n32 recvmmsg_time64 compat_sys_recvmmsg_time64
359418 n32 mq_timedsend_time64 sys_mq_timedsend
360419 n32 mq_timedreceive_time64 sys_mq_timedreceive
361420 n32 semtimedop_time64 sys_semtimedop
362421 n32 rt_sigtimedwait_time64 compat_sys_rt_sigtimedwait_time64
363422 n32 futex_time64 sys_futex
364423 n32 sched_rr_get_interval_time64 sys_sched_rr_get_interval
diff --git a/arch/mips/kernel/syscalls/syscall_n64.tbl b/arch/mips/kernel/syscalls/syscall_n64.tbl
index af0da757a7b2..c85502e67b44 100644
--- a/arch/mips/kernel/syscalls/syscall_n64.tbl
+++ b/arch/mips/kernel/syscalls/syscall_n64.tbl
@@ -337,3 +337,4 @@
337326 n64 statx sys_statx 337326 n64 statx sys_statx
338327 n64 rseq sys_rseq 338327 n64 rseq sys_rseq
339328 n64 io_pgetevents sys_io_pgetevents 339328 n64 io_pgetevents sys_io_pgetevents
340# 329 through 423 are reserved to sync up with other architectures
diff --git a/arch/mips/kernel/syscalls/syscall_o32.tbl b/arch/mips/kernel/syscalls/syscall_o32.tbl
index fa47ea8cc6ef..2e063d0f837e 100644
--- a/arch/mips/kernel/syscalls/syscall_o32.tbl
+++ b/arch/mips/kernel/syscalls/syscall_o32.tbl
@@ -20,7 +20,7 @@
2010 o32 unlink sys_unlink 2010 o32 unlink sys_unlink
2111 o32 execve sys_execve compat_sys_execve 2111 o32 execve sys_execve compat_sys_execve
2212 o32 chdir sys_chdir 2212 o32 chdir sys_chdir
2313 o32 time sys_time compat_sys_time 2313 o32 time sys_time32
2414 o32 mknod sys_mknod 2414 o32 mknod sys_mknod
2515 o32 chmod sys_chmod 2515 o32 chmod sys_chmod
2616 o32 lchown sys_lchown 2616 o32 lchown sys_lchown
@@ -33,13 +33,13 @@
3322 o32 umount sys_oldumount 3322 o32 umount sys_oldumount
3423 o32 setuid sys_setuid 3423 o32 setuid sys_setuid
3524 o32 getuid sys_getuid 3524 o32 getuid sys_getuid
3625 o32 stime sys_stime compat_sys_stime 3625 o32 stime sys_stime32
3726 o32 ptrace sys_ptrace compat_sys_ptrace 3726 o32 ptrace sys_ptrace compat_sys_ptrace
3827 o32 alarm sys_alarm 3827 o32 alarm sys_alarm
39# 28 was sys_fstat 39# 28 was sys_fstat
4028 o32 unused28 sys_ni_syscall 4028 o32 unused28 sys_ni_syscall
4129 o32 pause sys_pause 4129 o32 pause sys_pause
4230 o32 utime sys_utime compat_sys_utime 4230 o32 utime sys_utime32
4331 o32 stty sys_ni_syscall 4331 o32 stty sys_ni_syscall
4432 o32 gtty sys_ni_syscall 4432 o32 gtty sys_ni_syscall
4533 o32 access sys_access 4533 o32 access sys_access
@@ -135,7 +135,7 @@
135121 o32 setdomainname sys_setdomainname 135121 o32 setdomainname sys_setdomainname
136122 o32 uname sys_newuname 136122 o32 uname sys_newuname
137123 o32 modify_ldt sys_ni_syscall 137123 o32 modify_ldt sys_ni_syscall
138124 o32 adjtimex sys_adjtimex compat_sys_adjtimex 138124 o32 adjtimex sys_adjtimex_time32
139125 o32 mprotect sys_mprotect 139125 o32 mprotect sys_mprotect
140126 o32 sigprocmask sys_sigprocmask compat_sys_sigprocmask 140126 o32 sigprocmask sys_sigprocmask compat_sys_sigprocmask
141127 o32 create_module sys_ni_syscall 141127 o32 create_module sys_ni_syscall
@@ -176,8 +176,8 @@
176162 o32 sched_yield sys_sched_yield 176162 o32 sched_yield sys_sched_yield
177163 o32 sched_get_priority_max sys_sched_get_priority_max 177163 o32 sched_get_priority_max sys_sched_get_priority_max
178164 o32 sched_get_priority_min sys_sched_get_priority_min 178164 o32 sched_get_priority_min sys_sched_get_priority_min
179165 o32 sched_rr_get_interval sys_sched_rr_get_interval compat_sys_sched_rr_get_interval 179165 o32 sched_rr_get_interval sys_sched_rr_get_interval_time32
180166 o32 nanosleep sys_nanosleep compat_sys_nanosleep 180166 o32 nanosleep sys_nanosleep_time32
181167 o32 mremap sys_mremap 181167 o32 mremap sys_mremap
182168 o32 accept sys_accept 182168 o32 accept sys_accept
183169 o32 bind sys_bind 183169 o32 bind sys_bind
@@ -208,7 +208,7 @@
208194 o32 rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction 208194 o32 rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction
209195 o32 rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask 209195 o32 rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask
210196 o32 rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending 210196 o32 rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending
211197 o32 rt_sigtimedwait sys_rt_sigtimedwait compat_sys_rt_sigtimedwait 211197 o32 rt_sigtimedwait sys_rt_sigtimedwait_time32 compat_sys_rt_sigtimedwait_time32
212198 o32 rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo 212198 o32 rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo
213199 o32 rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend 213199 o32 rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend
214200 o32 pread64 sys_pread64 sys_32_pread 214200 o32 pread64 sys_pread64 sys_32_pread
@@ -249,12 +249,12 @@
249235 o32 fremovexattr sys_fremovexattr 249235 o32 fremovexattr sys_fremovexattr
250236 o32 tkill sys_tkill 250236 o32 tkill sys_tkill
251237 o32 sendfile64 sys_sendfile64 251237 o32 sendfile64 sys_sendfile64
252238 o32 futex sys_futex compat_sys_futex 252238 o32 futex sys_futex_time32
253239 o32 sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity 253239 o32 sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity
254240 o32 sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity 254240 o32 sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity
255241 o32 io_setup sys_io_setup compat_sys_io_setup 255241 o32 io_setup sys_io_setup compat_sys_io_setup
256242 o32 io_destroy sys_io_destroy 256242 o32 io_destroy sys_io_destroy
257243 o32 io_getevents sys_io_getevents compat_sys_io_getevents 257243 o32 io_getevents sys_io_getevents_time32
258244 o32 io_submit sys_io_submit compat_sys_io_submit 258244 o32 io_submit sys_io_submit compat_sys_io_submit
259245 o32 io_cancel sys_io_cancel 259245 o32 io_cancel sys_io_cancel
260246 o32 exit_group sys_exit_group 260246 o32 exit_group sys_exit_group
@@ -269,23 +269,23 @@
269255 o32 statfs64 sys_statfs64 compat_sys_statfs64 269255 o32 statfs64 sys_statfs64 compat_sys_statfs64
270256 o32 fstatfs64 sys_fstatfs64 compat_sys_fstatfs64 270256 o32 fstatfs64 sys_fstatfs64 compat_sys_fstatfs64
271257 o32 timer_create sys_timer_create compat_sys_timer_create 271257 o32 timer_create sys_timer_create compat_sys_timer_create
272258 o32 timer_settime sys_timer_settime compat_sys_timer_settime 272258 o32 timer_settime sys_timer_settime32
273259 o32 timer_gettime sys_timer_gettime compat_sys_timer_gettime 273259 o32 timer_gettime sys_timer_gettime32
274260 o32 timer_getoverrun sys_timer_getoverrun 274260 o32 timer_getoverrun sys_timer_getoverrun
275261 o32 timer_delete sys_timer_delete 275261 o32 timer_delete sys_timer_delete
276262 o32 clock_settime sys_clock_settime compat_sys_clock_settime 276262 o32 clock_settime sys_clock_settime32
277263 o32 clock_gettime sys_clock_gettime compat_sys_clock_gettime 277263 o32 clock_gettime sys_clock_gettime32
278264 o32 clock_getres sys_clock_getres compat_sys_clock_getres 278264 o32 clock_getres sys_clock_getres_time32
279265 o32 clock_nanosleep sys_clock_nanosleep compat_sys_clock_nanosleep 279265 o32 clock_nanosleep sys_clock_nanosleep_time32
280266 o32 tgkill sys_tgkill 280266 o32 tgkill sys_tgkill
281267 o32 utimes sys_utimes compat_sys_utimes 281267 o32 utimes sys_utimes_time32
282268 o32 mbind sys_mbind compat_sys_mbind 282268 o32 mbind sys_mbind compat_sys_mbind
283269 o32 get_mempolicy sys_get_mempolicy compat_sys_get_mempolicy 283269 o32 get_mempolicy sys_get_mempolicy compat_sys_get_mempolicy
284270 o32 set_mempolicy sys_set_mempolicy compat_sys_set_mempolicy 284270 o32 set_mempolicy sys_set_mempolicy compat_sys_set_mempolicy
285271 o32 mq_open sys_mq_open compat_sys_mq_open 285271 o32 mq_open sys_mq_open compat_sys_mq_open
286272 o32 mq_unlink sys_mq_unlink 286272 o32 mq_unlink sys_mq_unlink
287273 o32 mq_timedsend sys_mq_timedsend compat_sys_mq_timedsend 287273 o32 mq_timedsend sys_mq_timedsend_time32
288274 o32 mq_timedreceive sys_mq_timedreceive compat_sys_mq_timedreceive 288274 o32 mq_timedreceive sys_mq_timedreceive_time32
289275 o32 mq_notify sys_mq_notify compat_sys_mq_notify 289275 o32 mq_notify sys_mq_notify compat_sys_mq_notify
290276 o32 mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr 290276 o32 mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr
291277 o32 vserver sys_ni_syscall 291277 o32 vserver sys_ni_syscall
@@ -303,7 +303,7 @@
303289 o32 mkdirat sys_mkdirat 303289 o32 mkdirat sys_mkdirat
304290 o32 mknodat sys_mknodat 304290 o32 mknodat sys_mknodat
305291 o32 fchownat sys_fchownat 305291 o32 fchownat sys_fchownat
306292 o32 futimesat sys_futimesat compat_sys_futimesat 306292 o32 futimesat sys_futimesat_time32
307293 o32 fstatat64 sys_fstatat64 sys_newfstatat 307293 o32 fstatat64 sys_fstatat64 sys_newfstatat
308294 o32 unlinkat sys_unlinkat 308294 o32 unlinkat sys_unlinkat
309295 o32 renameat sys_renameat 309295 o32 renameat sys_renameat
@@ -312,8 +312,8 @@
312298 o32 readlinkat sys_readlinkat 312298 o32 readlinkat sys_readlinkat
313299 o32 fchmodat sys_fchmodat 313299 o32 fchmodat sys_fchmodat
314300 o32 faccessat sys_faccessat 314300 o32 faccessat sys_faccessat
315301 o32 pselect6 sys_pselect6 compat_sys_pselect6 315301 o32 pselect6 sys_pselect6_time32 compat_sys_pselect6_time32
316302 o32 ppoll sys_ppoll compat_sys_ppoll 316302 o32 ppoll sys_ppoll_time32 compat_sys_ppoll_time32
317303 o32 unshare sys_unshare 317303 o32 unshare sys_unshare
318304 o32 splice sys_splice 318304 o32 splice sys_splice
319305 o32 sync_file_range sys_sync_file_range sys32_sync_file_range 319305 o32 sync_file_range sys_sync_file_range sys32_sync_file_range
@@ -327,14 +327,14 @@
327313 o32 epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait 327313 o32 epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait
328314 o32 ioprio_set sys_ioprio_set 328314 o32 ioprio_set sys_ioprio_set
329315 o32 ioprio_get sys_ioprio_get 329315 o32 ioprio_get sys_ioprio_get
330316 o32 utimensat sys_utimensat compat_sys_utimensat 330316 o32 utimensat sys_utimensat_time32
331317 o32 signalfd sys_signalfd compat_sys_signalfd 331317 o32 signalfd sys_signalfd compat_sys_signalfd
332318 o32 timerfd sys_ni_syscall 332318 o32 timerfd sys_ni_syscall
333319 o32 eventfd sys_eventfd 333319 o32 eventfd sys_eventfd
334320 o32 fallocate sys_fallocate sys32_fallocate 334320 o32 fallocate sys_fallocate sys32_fallocate
335321 o32 timerfd_create sys_timerfd_create 335321 o32 timerfd_create sys_timerfd_create
336322 o32 timerfd_gettime sys_timerfd_gettime compat_sys_timerfd_gettime 336322 o32 timerfd_gettime sys_timerfd_gettime32
337323 o32 timerfd_settime sys_timerfd_settime compat_sys_timerfd_settime 337323 o32 timerfd_settime sys_timerfd_settime32
338324 o32 signalfd4 sys_signalfd4 compat_sys_signalfd4 338324 o32 signalfd4 sys_signalfd4 compat_sys_signalfd4
339325 o32 eventfd2 sys_eventfd2 339325 o32 eventfd2 sys_eventfd2
340326 o32 epoll_create1 sys_epoll_create1 340326 o32 epoll_create1 sys_epoll_create1
@@ -346,13 +346,13 @@
346332 o32 rt_tgsigqueueinfo sys_rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo 346332 o32 rt_tgsigqueueinfo sys_rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo
347333 o32 perf_event_open sys_perf_event_open 347333 o32 perf_event_open sys_perf_event_open
348334 o32 accept4 sys_accept4 348334 o32 accept4 sys_accept4
349335 o32 recvmmsg sys_recvmmsg compat_sys_recvmmsg 349335 o32 recvmmsg sys_recvmmsg_time32 compat_sys_recvmmsg_time32
350336 o32 fanotify_init sys_fanotify_init 350336 o32 fanotify_init sys_fanotify_init
351337 o32 fanotify_mark sys_fanotify_mark compat_sys_fanotify_mark 351337 o32 fanotify_mark sys_fanotify_mark compat_sys_fanotify_mark
352338 o32 prlimit64 sys_prlimit64 352338 o32 prlimit64 sys_prlimit64
353339 o32 name_to_handle_at sys_name_to_handle_at 353339 o32 name_to_handle_at sys_name_to_handle_at
354340 o32 open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at 354340 o32 open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at
355341 o32 clock_adjtime sys_clock_adjtime compat_sys_clock_adjtime 355341 o32 clock_adjtime sys_clock_adjtime32
356342 o32 syncfs sys_syncfs 356342 o32 syncfs sys_syncfs
357343 o32 sendmmsg sys_sendmmsg compat_sys_sendmmsg 357343 o32 sendmmsg sys_sendmmsg compat_sys_sendmmsg
358344 o32 setns sys_setns 358344 o32 setns sys_setns
@@ -379,7 +379,7 @@
379365 o32 pkey_free sys_pkey_free 379365 o32 pkey_free sys_pkey_free
380366 o32 statx sys_statx 380366 o32 statx sys_statx
381367 o32 rseq sys_rseq 381367 o32 rseq sys_rseq
382368 o32 io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents 382368 o32 io_pgetevents sys_io_pgetevents_time32 compat_sys_io_pgetevents
383# room for arch specific calls 383# room for arch specific calls
384393 o32 semget sys_semget 384393 o32 semget sys_semget
385394 o32 semctl sys_semctl compat_sys_semctl 385394 o32 semctl sys_semctl compat_sys_semctl
@@ -391,3 +391,23 @@
391400 o32 msgsnd sys_msgsnd compat_sys_msgsnd 391400 o32 msgsnd sys_msgsnd compat_sys_msgsnd
392401 o32 msgrcv sys_msgrcv compat_sys_msgrcv 392401 o32 msgrcv sys_msgrcv compat_sys_msgrcv
393402 o32 msgctl sys_msgctl compat_sys_msgctl 393402 o32 msgctl sys_msgctl compat_sys_msgctl
394403 o32 clock_gettime64 sys_clock_gettime sys_clock_gettime
395404 o32 clock_settime64 sys_clock_settime sys_clock_settime
396405 o32 clock_adjtime64 sys_clock_adjtime sys_clock_adjtime
397406 o32 clock_getres_time64 sys_clock_getres sys_clock_getres
398407 o32 clock_nanosleep_time64 sys_clock_nanosleep sys_clock_nanosleep
399408 o32 timer_gettime64 sys_timer_gettime sys_timer_gettime
400409 o32 timer_settime64 sys_timer_settime sys_timer_settime
401410 o32 timerfd_gettime64 sys_timerfd_gettime sys_timerfd_gettime
402411 o32 timerfd_settime64 sys_timerfd_settime sys_timerfd_settime
403412 o32 utimensat_time64 sys_utimensat sys_utimensat
404413 o32 pselect6_time64 sys_pselect6 compat_sys_pselect6_time64
405414 o32 ppoll_time64 sys_ppoll compat_sys_ppoll_time64
406416 o32 io_pgetevents_time64 sys_io_pgetevents sys_io_pgetevents
407417 o32 recvmmsg_time64 sys_recvmmsg compat_sys_recvmmsg_time64
408418 o32 mq_timedsend_time64 sys_mq_timedsend sys_mq_timedsend
409419 o32 mq_timedreceive_time64 sys_mq_timedreceive sys_mq_timedreceive
410420 o32 semtimedop_time64 sys_semtimedop sys_semtimedop
411421 o32 rt_sigtimedwait_time64 sys_rt_sigtimedwait compat_sys_rt_sigtimedwait_time64
412422 o32 futex_time64 sys_futex sys_futex
413423 o32 sched_rr_get_interval_time64 sys_sched_rr_get_interval sys_sched_rr_get_interval
diff --git a/arch/parisc/include/asm/unistd.h b/arch/parisc/include/asm/unistd.h
index ac742b80e333..b0838dc4dfee 100644
--- a/arch/parisc/include/asm/unistd.h
+++ b/arch/parisc/include/asm/unistd.h
@@ -152,10 +152,8 @@ type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) \
152#define __ARCH_WANT_SYS_GETHOSTNAME 152#define __ARCH_WANT_SYS_GETHOSTNAME
153#define __ARCH_WANT_SYS_PAUSE 153#define __ARCH_WANT_SYS_PAUSE
154#define __ARCH_WANT_SYS_SIGNAL 154#define __ARCH_WANT_SYS_SIGNAL
155#define __ARCH_WANT_SYS_TIME 155#define __ARCH_WANT_SYS_TIME32
156#define __ARCH_WANT_COMPAT_SYS_TIME
157#define __ARCH_WANT_COMPAT_SYS_SCHED_RR_GET_INTERVAL 156#define __ARCH_WANT_COMPAT_SYS_SCHED_RR_GET_INTERVAL
158#define __ARCH_WANT_SYS_UTIME
159#define __ARCH_WANT_SYS_UTIME32 157#define __ARCH_WANT_SYS_UTIME32
160#define __ARCH_WANT_SYS_WAITPID 158#define __ARCH_WANT_SYS_WAITPID
161#define __ARCH_WANT_SYS_SOCKETCALL 159#define __ARCH_WANT_SYS_SOCKETCALL
@@ -170,6 +168,11 @@ type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) \
170#define __ARCH_WANT_SYS_CLONE 168#define __ARCH_WANT_SYS_CLONE
171#define __ARCH_WANT_COMPAT_SYS_SENDFILE 169#define __ARCH_WANT_COMPAT_SYS_SENDFILE
172 170
171#ifdef CONFIG_64BIT
172#define __ARCH_WANT_SYS_TIME
173#define __ARCH_WANT_SYS_UTIME
174#endif
175
173#endif /* __ASSEMBLY__ */ 176#endif /* __ASSEMBLY__ */
174 177
175#undef STR 178#undef STR
diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
index 71873bb72782..b26766c6647d 100644
--- a/arch/parisc/kernel/syscalls/syscall.tbl
+++ b/arch/parisc/kernel/syscalls/syscall.tbl
@@ -20,7 +20,8 @@
2010 common unlink sys_unlink 2010 common unlink sys_unlink
2111 common execve sys_execve compat_sys_execve 2111 common execve sys_execve compat_sys_execve
2212 common chdir sys_chdir 2212 common chdir sys_chdir
2313 common time sys_time compat_sys_time 2313 32 time sys_time32
2413 64 time sys_time
2414 common mknod sys_mknod 2514 common mknod sys_mknod
2515 common chmod sys_chmod 2615 common chmod sys_chmod
2616 common lchown sys_lchown 2716 common lchown sys_lchown
@@ -32,12 +33,14 @@
3222 common bind sys_bind 3322 common bind sys_bind
3323 common setuid sys_setuid 3423 common setuid sys_setuid
3424 common getuid sys_getuid 3524 common getuid sys_getuid
3525 common stime sys_stime compat_sys_stime 3625 32 stime sys_stime32
3725 64 stime sys_stime
3626 common ptrace sys_ptrace compat_sys_ptrace 3826 common ptrace sys_ptrace compat_sys_ptrace
3727 common alarm sys_alarm 3927 common alarm sys_alarm
3828 common fstat sys_newfstat compat_sys_newfstat 4028 common fstat sys_newfstat compat_sys_newfstat
3929 common pause sys_pause 4129 common pause sys_pause
4030 common utime sys_utime compat_sys_utime 4230 32 utime sys_utime32
4330 64 utime sys_utime
4131 common connect sys_connect 4431 common connect sys_connect
4232 common listen sys_listen 4532 common listen sys_listen
4333 common access sys_access 4633 common access sys_access
@@ -133,7 +136,8 @@
133121 common setdomainname sys_setdomainname 136121 common setdomainname sys_setdomainname
134122 common sendfile sys_sendfile compat_sys_sendfile 137122 common sendfile sys_sendfile compat_sys_sendfile
135123 common recvfrom sys_recvfrom 138123 common recvfrom sys_recvfrom
136124 common adjtimex sys_adjtimex compat_sys_adjtimex 139124 32 adjtimex sys_adjtimex_time32
140124 64 adjtimex sys_adjtimex
137125 common mprotect sys_mprotect 141125 common mprotect sys_mprotect
138126 common sigprocmask sys_sigprocmask compat_sys_sigprocmask 142126 common sigprocmask sys_sigprocmask compat_sys_sigprocmask
139# 127 was create_module 143# 127 was create_module
@@ -171,8 +175,10 @@
171158 common sched_yield sys_sched_yield 175158 common sched_yield sys_sched_yield
172159 common sched_get_priority_max sys_sched_get_priority_max 176159 common sched_get_priority_max sys_sched_get_priority_max
173160 common sched_get_priority_min sys_sched_get_priority_min 177160 common sched_get_priority_min sys_sched_get_priority_min
174161 common sched_rr_get_interval sys_sched_rr_get_interval compat_sys_sched_rr_get_interval 178161 32 sched_rr_get_interval sys_sched_rr_get_interval_time32
175162 common nanosleep sys_nanosleep compat_sys_nanosleep 179161 64 sched_rr_get_interval sys_sched_rr_get_interval
180162 32 nanosleep sys_nanosleep_time32
181162 64 nanosleep sys_nanosleep
176163 common mremap sys_mremap 182163 common mremap sys_mremap
177164 common setresuid sys_setresuid 183164 common setresuid sys_setresuid
178165 common getresuid sys_getresuid 184165 common getresuid sys_getresuid
@@ -187,7 +193,8 @@
187174 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction 193174 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction
188175 common rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask 194175 common rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask
189176 common rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending 195176 common rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending
190177 common rt_sigtimedwait sys_rt_sigtimedwait compat_sys_rt_sigtimedwait 196177 32 rt_sigtimedwait sys_rt_sigtimedwait_time32 compat_sys_rt_sigtimedwait_time32
197177 64 rt_sigtimedwait sys_rt_sigtimedwait
191178 common rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo 198178 common rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo
192179 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend 199179 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend
193180 common chown sys_chown 200180 common chown sys_chown
@@ -223,14 +230,16 @@
223207 64 readahead sys_readahead 230207 64 readahead sys_readahead
224208 common tkill sys_tkill 231208 common tkill sys_tkill
225209 common sendfile64 sys_sendfile64 compat_sys_sendfile64 232209 common sendfile64 sys_sendfile64 compat_sys_sendfile64
226210 common futex sys_futex compat_sys_futex 233210 32 futex sys_futex_time32
234210 64 futex sys_futex
227211 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity 235211 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity
228212 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity 236212 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity
229# 213 was set_thread_area 237# 213 was set_thread_area
230# 214 was get_thread_area 238# 214 was get_thread_area
231215 common io_setup sys_io_setup compat_sys_io_setup 239215 common io_setup sys_io_setup compat_sys_io_setup
232216 common io_destroy sys_io_destroy 240216 common io_destroy sys_io_destroy
233217 common io_getevents sys_io_getevents compat_sys_io_getevents 241217 32 io_getevents sys_io_getevents_time32
242217 64 io_getevents sys_io_getevents
234218 common io_submit sys_io_submit compat_sys_io_submit 243218 common io_submit sys_io_submit compat_sys_io_submit
235219 common io_cancel sys_io_cancel 244219 common io_cancel sys_io_cancel
236# 220 was alloc_hugepages 245# 220 was alloc_hugepages
@@ -241,11 +250,14 @@
241225 common epoll_ctl sys_epoll_ctl 250225 common epoll_ctl sys_epoll_ctl
242226 common epoll_wait sys_epoll_wait 251226 common epoll_wait sys_epoll_wait
243227 common remap_file_pages sys_remap_file_pages 252227 common remap_file_pages sys_remap_file_pages
244228 common semtimedop sys_semtimedop compat_sys_semtimedop 253228 32 semtimedop sys_semtimedop_time32
254228 64 semtimedop sys_semtimedop
245229 common mq_open sys_mq_open compat_sys_mq_open 255229 common mq_open sys_mq_open compat_sys_mq_open
246230 common mq_unlink sys_mq_unlink 256230 common mq_unlink sys_mq_unlink
247231 common mq_timedsend sys_mq_timedsend compat_sys_mq_timedsend 257231 32 mq_timedsend sys_mq_timedsend_time32
248232 common mq_timedreceive sys_mq_timedreceive compat_sys_mq_timedreceive 258231 64 mq_timedsend sys_mq_timedsend
259232 32 mq_timedreceive sys_mq_timedreceive_time32
260232 64 mq_timedreceive sys_mq_timedreceive
249233 common mq_notify sys_mq_notify compat_sys_mq_notify 261233 common mq_notify sys_mq_notify compat_sys_mq_notify
250234 common mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr 262234 common mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr
251235 common waitid sys_waitid compat_sys_waitid 263235 common waitid sys_waitid compat_sys_waitid
@@ -265,14 +277,20 @@
265248 common lremovexattr sys_lremovexattr 277248 common lremovexattr sys_lremovexattr
266249 common fremovexattr sys_fremovexattr 278249 common fremovexattr sys_fremovexattr
267250 common timer_create sys_timer_create compat_sys_timer_create 279250 common timer_create sys_timer_create compat_sys_timer_create
268251 common timer_settime sys_timer_settime compat_sys_timer_settime 280251 32 timer_settime sys_timer_settime32
269252 common timer_gettime sys_timer_gettime compat_sys_timer_gettime 281251 64 timer_settime sys_timer_settime
282252 32 timer_gettime sys_timer_gettime32
283252 64 timer_gettime sys_timer_gettime
270253 common timer_getoverrun sys_timer_getoverrun 284253 common timer_getoverrun sys_timer_getoverrun
271254 common timer_delete sys_timer_delete 285254 common timer_delete sys_timer_delete
272255 common clock_settime sys_clock_settime compat_sys_clock_settime 286255 32 clock_settime sys_clock_settime32
273256 common clock_gettime sys_clock_gettime compat_sys_clock_gettime 287255 64 clock_settime sys_clock_settime
274257 common clock_getres sys_clock_getres compat_sys_clock_getres 288256 32 clock_gettime sys_clock_gettime32
275258 common clock_nanosleep sys_clock_nanosleep compat_sys_clock_nanosleep 289256 64 clock_gettime sys_clock_gettime
290257 32 clock_getres sys_clock_getres_time32
291257 64 clock_getres sys_clock_getres
292258 32 clock_nanosleep sys_clock_nanosleep_time32
293258 64 clock_nanosleep sys_clock_nanosleep
276259 common tgkill sys_tgkill 294259 common tgkill sys_tgkill
277260 common mbind sys_mbind compat_sys_mbind 295260 common mbind sys_mbind compat_sys_mbind
278261 common get_mempolicy sys_get_mempolicy compat_sys_get_mempolicy 296261 common get_mempolicy sys_get_mempolicy compat_sys_get_mempolicy
@@ -287,13 +305,16 @@
287270 common inotify_add_watch sys_inotify_add_watch 305270 common inotify_add_watch sys_inotify_add_watch
288271 common inotify_rm_watch sys_inotify_rm_watch 306271 common inotify_rm_watch sys_inotify_rm_watch
289272 common migrate_pages sys_migrate_pages 307272 common migrate_pages sys_migrate_pages
290273 common pselect6 sys_pselect6 compat_sys_pselect6 308273 32 pselect6 sys_pselect6_time32 compat_sys_pselect6_time32
291274 common ppoll sys_ppoll compat_sys_ppoll 309273 64 pselect6 sys_pselect6
310274 32 ppoll sys_ppoll_time32 compat_sys_ppoll_time32
311274 64 ppoll sys_ppoll
292275 common openat sys_openat compat_sys_openat 312275 common openat sys_openat compat_sys_openat
293276 common mkdirat sys_mkdirat 313276 common mkdirat sys_mkdirat
294277 common mknodat sys_mknodat 314277 common mknodat sys_mknodat
295278 common fchownat sys_fchownat 315278 common fchownat sys_fchownat
296279 common futimesat sys_futimesat compat_sys_futimesat 316279 32 futimesat sys_futimesat_time32
317279 64 futimesat sys_futimesat
297280 common fstatat64 sys_fstatat64 318280 common fstatat64 sys_fstatat64
298281 common unlinkat sys_unlinkat 319281 common unlinkat sys_unlinkat
299282 common renameat sys_renameat 320282 common renameat sys_renameat
@@ -316,15 +337,18 @@
316298 common statfs64 sys_statfs64 compat_sys_statfs64 337298 common statfs64 sys_statfs64 compat_sys_statfs64
317299 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64 338299 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64
318300 common kexec_load sys_kexec_load compat_sys_kexec_load 339300 common kexec_load sys_kexec_load compat_sys_kexec_load
319301 common utimensat sys_utimensat compat_sys_utimensat 340301 32 utimensat sys_utimensat_time32
341301 64 utimensat sys_utimensat
320302 common signalfd sys_signalfd compat_sys_signalfd 342302 common signalfd sys_signalfd compat_sys_signalfd
321# 303 was timerfd 343# 303 was timerfd
322304 common eventfd sys_eventfd 344304 common eventfd sys_eventfd
323305 32 fallocate parisc_fallocate 345305 32 fallocate parisc_fallocate
324305 64 fallocate sys_fallocate 346305 64 fallocate sys_fallocate
325306 common timerfd_create sys_timerfd_create 347306 common timerfd_create sys_timerfd_create
326307 common timerfd_settime sys_timerfd_settime compat_sys_timerfd_settime 348307 32 timerfd_settime sys_timerfd_settime32
327308 common timerfd_gettime sys_timerfd_gettime compat_sys_timerfd_gettime 349307 64 timerfd_settime sys_timerfd_settime
350308 32 timerfd_gettime sys_timerfd_gettime32
351308 64 timerfd_gettime sys_timerfd_gettime
328309 common signalfd4 sys_signalfd4 compat_sys_signalfd4 352309 common signalfd4 sys_signalfd4 compat_sys_signalfd4
329310 common eventfd2 sys_eventfd2 353310 common eventfd2 sys_eventfd2
330311 common epoll_create1 sys_epoll_create1 354311 common epoll_create1 sys_epoll_create1
@@ -335,12 +359,14 @@
335316 common pwritev sys_pwritev compat_sys_pwritev 359316 common pwritev sys_pwritev compat_sys_pwritev
336317 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo 360317 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo
337318 common perf_event_open sys_perf_event_open 361318 common perf_event_open sys_perf_event_open
338319 common recvmmsg sys_recvmmsg compat_sys_recvmmsg 362319 32 recvmmsg sys_recvmmsg_time32 compat_sys_recvmmsg_time32
363319 64 recvmmsg sys_recvmmsg
339320 common accept4 sys_accept4 364320 common accept4 sys_accept4
340321 common prlimit64 sys_prlimit64 365321 common prlimit64 sys_prlimit64
341322 common fanotify_init sys_fanotify_init 366322 common fanotify_init sys_fanotify_init
342323 common fanotify_mark sys_fanotify_mark sys32_fanotify_mark 367323 common fanotify_mark sys_fanotify_mark sys32_fanotify_mark
343324 common clock_adjtime sys_clock_adjtime compat_sys_clock_adjtime 368324 32 clock_adjtime sys_clock_adjtime32
369324 64 clock_adjtime sys_clock_adjtime
344325 common name_to_handle_at sys_name_to_handle_at 370325 common name_to_handle_at sys_name_to_handle_at
345326 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at 371326 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at
346327 common syncfs sys_syncfs 372327 common syncfs sys_syncfs
@@ -352,7 +378,8 @@
352333 common finit_module sys_finit_module 378333 common finit_module sys_finit_module
353334 common sched_setattr sys_sched_setattr 379334 common sched_setattr sys_sched_setattr
354335 common sched_getattr sys_sched_getattr 380335 common sched_getattr sys_sched_getattr
355336 common utimes sys_utimes compat_sys_utimes 381336 32 utimes sys_utimes_time32
382336 64 utimes sys_utimes
356337 common renameat2 sys_renameat2 383337 common renameat2 sys_renameat2
357338 common seccomp sys_seccomp 384338 common seccomp sys_seccomp
358339 common getrandom sys_getrandom 385339 common getrandom sys_getrandom
@@ -366,8 +393,30 @@
366347 common preadv2 sys_preadv2 compat_sys_preadv2 393347 common preadv2 sys_preadv2 compat_sys_preadv2
367348 common pwritev2 sys_pwritev2 compat_sys_pwritev2 394348 common pwritev2 sys_pwritev2 compat_sys_pwritev2
368349 common statx sys_statx 395349 common statx sys_statx
369350 common io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents 396350 32 io_pgetevents sys_io_pgetevents_time32 compat_sys_io_pgetevents
397350 64 io_pgetevents sys_io_pgetevents
370351 common pkey_mprotect sys_pkey_mprotect 398351 common pkey_mprotect sys_pkey_mprotect
371352 common pkey_alloc sys_pkey_alloc 399352 common pkey_alloc sys_pkey_alloc
372353 common pkey_free sys_pkey_free 400353 common pkey_free sys_pkey_free
373354 common rseq sys_rseq 401354 common rseq sys_rseq
402# 355 through 402 are unassigned to sync up with generic numbers
403403 32 clock_gettime64 sys_clock_gettime sys_clock_gettime
404404 32 clock_settime64 sys_clock_settime sys_clock_settime
405405 32 clock_adjtime64 sys_clock_adjtime sys_clock_adjtime
406406 32 clock_getres_time64 sys_clock_getres sys_clock_getres
407407 32 clock_nanosleep_time64 sys_clock_nanosleep sys_clock_nanosleep
408408 32 timer_gettime64 sys_timer_gettime sys_timer_gettime
409409 32 timer_settime64 sys_timer_settime sys_timer_settime
410410 32 timerfd_gettime64 sys_timerfd_gettime sys_timerfd_gettime
411411 32 timerfd_settime64 sys_timerfd_settime sys_timerfd_settime
412412 32 utimensat_time64 sys_utimensat sys_utimensat
413413 32 pselect6_time64 sys_pselect6 compat_sys_pselect6_time64
414414 32 ppoll_time64 sys_ppoll compat_sys_ppoll_time64
415416 32 io_pgetevents_time64 sys_io_pgetevents sys_io_pgetevents
416417 32 recvmmsg_time64 sys_recvmmsg compat_sys_recvmmsg_time64
417418 32 mq_timedsend_time64 sys_mq_timedsend sys_mq_timedsend
418419 32 mq_timedreceive_time64 sys_mq_timedreceive sys_mq_timedreceive
419420 32 semtimedop_time64 sys_semtimedop sys_semtimedop
420421 32 rt_sigtimedwait_time64 sys_rt_sigtimedwait compat_sys_rt_sigtimedwait_time64
421422 32 futex_time64 sys_futex sys_futex
422423 32 sched_rr_get_interval_time64 sys_sched_rr_get_interval sys_sched_rr_get_interval
diff --git a/arch/powerpc/include/asm/unistd.h b/arch/powerpc/include/asm/unistd.h
index a3c35e6d6ffb..f44dbc65e38e 100644
--- a/arch/powerpc/include/asm/unistd.h
+++ b/arch/powerpc/include/asm/unistd.h
@@ -29,8 +29,8 @@
29#define __ARCH_WANT_SYS_IPC 29#define __ARCH_WANT_SYS_IPC
30#define __ARCH_WANT_SYS_PAUSE 30#define __ARCH_WANT_SYS_PAUSE
31#define __ARCH_WANT_SYS_SIGNAL 31#define __ARCH_WANT_SYS_SIGNAL
32#define __ARCH_WANT_SYS_TIME 32#define __ARCH_WANT_SYS_TIME32
33#define __ARCH_WANT_SYS_UTIME 33#define __ARCH_WANT_SYS_UTIME32
34#define __ARCH_WANT_SYS_WAITPID 34#define __ARCH_WANT_SYS_WAITPID
35#define __ARCH_WANT_SYS_SOCKETCALL 35#define __ARCH_WANT_SYS_SOCKETCALL
36#define __ARCH_WANT_SYS_FADVISE64 36#define __ARCH_WANT_SYS_FADVISE64
@@ -45,8 +45,8 @@
45#define __ARCH_WANT_OLD_STAT 45#define __ARCH_WANT_OLD_STAT
46#endif 46#endif
47#ifdef CONFIG_PPC64 47#ifdef CONFIG_PPC64
48#define __ARCH_WANT_COMPAT_SYS_TIME 48#define __ARCH_WANT_SYS_TIME
49#define __ARCH_WANT_SYS_UTIME32 49#define __ARCH_WANT_SYS_UTIME
50#define __ARCH_WANT_SYS_NEWFSTATAT 50#define __ARCH_WANT_SYS_NEWFSTATAT
51#define __ARCH_WANT_COMPAT_SYS_SENDFILE 51#define __ARCH_WANT_COMPAT_SYS_SENDFILE
52#endif 52#endif
diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl
index 7555874ce39c..b18abb0c3dae 100644
--- a/arch/powerpc/kernel/syscalls/syscall.tbl
+++ b/arch/powerpc/kernel/syscalls/syscall.tbl
@@ -20,7 +20,9 @@
2010 common unlink sys_unlink 2010 common unlink sys_unlink
2111 nospu execve sys_execve compat_sys_execve 2111 nospu execve sys_execve compat_sys_execve
2212 common chdir sys_chdir 2212 common chdir sys_chdir
2313 common time sys_time compat_sys_time 2313 32 time sys_time32
2413 64 time sys_time
2513 spu time sys_time
2414 common mknod sys_mknod 2614 common mknod sys_mknod
2515 common chmod sys_chmod 2715 common chmod sys_chmod
2616 common lchown sys_lchown 2816 common lchown sys_lchown
@@ -36,14 +38,17 @@
3622 spu umount sys_ni_syscall 3822 spu umount sys_ni_syscall
3723 common setuid sys_setuid 3923 common setuid sys_setuid
3824 common getuid sys_getuid 4024 common getuid sys_getuid
3925 common stime sys_stime compat_sys_stime 4125 32 stime sys_stime32
4225 64 stime sys_stime
4325 spu stime sys_stime
4026 nospu ptrace sys_ptrace compat_sys_ptrace 4426 nospu ptrace sys_ptrace compat_sys_ptrace
4127 common alarm sys_alarm 4527 common alarm sys_alarm
4228 32 oldfstat sys_fstat sys_ni_syscall 4628 32 oldfstat sys_fstat sys_ni_syscall
4328 64 oldfstat sys_ni_syscall 4728 64 oldfstat sys_ni_syscall
4428 spu oldfstat sys_ni_syscall 4828 spu oldfstat sys_ni_syscall
4529 nospu pause sys_pause 4929 nospu pause sys_pause
4630 nospu utime sys_utime compat_sys_utime 5030 32 utime sys_utime32
5130 64 utime sys_utime
4731 common stty sys_ni_syscall 5231 common stty sys_ni_syscall
4832 common gtty sys_ni_syscall 5332 common gtty sys_ni_syscall
4933 common access sys_access 5433 common access sys_access
@@ -157,7 +162,9 @@
157121 common setdomainname sys_setdomainname 162121 common setdomainname sys_setdomainname
158122 common uname sys_newuname 163122 common uname sys_newuname
159123 common modify_ldt sys_ni_syscall 164123 common modify_ldt sys_ni_syscall
160124 common adjtimex sys_adjtimex compat_sys_adjtimex 165124 32 adjtimex sys_adjtimex_time32
166124 64 adjtimex sys_adjtimex
167124 spu adjtimex sys_adjtimex
161125 common mprotect sys_mprotect 168125 common mprotect sys_mprotect
162126 32 sigprocmask sys_sigprocmask compat_sys_sigprocmask 169126 32 sigprocmask sys_sigprocmask compat_sys_sigprocmask
163126 64 sigprocmask sys_ni_syscall 170126 64 sigprocmask sys_ni_syscall
@@ -198,8 +205,12 @@
198158 common sched_yield sys_sched_yield 205158 common sched_yield sys_sched_yield
199159 common sched_get_priority_max sys_sched_get_priority_max 206159 common sched_get_priority_max sys_sched_get_priority_max
200160 common sched_get_priority_min sys_sched_get_priority_min 207160 common sched_get_priority_min sys_sched_get_priority_min
201161 common sched_rr_get_interval sys_sched_rr_get_interval compat_sys_sched_rr_get_interval 208161 32 sched_rr_get_interval sys_sched_rr_get_interval_time32
202162 common nanosleep sys_nanosleep compat_sys_nanosleep 209161 64 sched_rr_get_interval sys_sched_rr_get_interval
210161 spu sched_rr_get_interval sys_sched_rr_get_interval
211162 32 nanosleep sys_nanosleep_time32
212162 64 nanosleep sys_nanosleep
213162 spu nanosleep sys_nanosleep
203163 common mremap sys_mremap 214163 common mremap sys_mremap
204164 common setresuid sys_setresuid 215164 common setresuid sys_setresuid
205165 common getresuid sys_getresuid 216165 common getresuid sys_getresuid
@@ -213,7 +224,8 @@
213173 nospu rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction 224173 nospu rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction
214174 nospu rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask 225174 nospu rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask
215175 nospu rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending 226175 nospu rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending
216176 nospu rt_sigtimedwait sys_rt_sigtimedwait compat_sys_rt_sigtimedwait 227176 32 rt_sigtimedwait sys_rt_sigtimedwait_time32 compat_sys_rt_sigtimedwait_time32
228176 64 rt_sigtimedwait sys_rt_sigtimedwait
217177 nospu rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo 229177 nospu rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo
218178 nospu rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend 230178 nospu rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend
219179 common pread64 sys_pread64 compat_sys_pread64 231179 common pread64 sys_pread64 compat_sys_pread64
@@ -260,7 +272,9 @@
260218 common removexattr sys_removexattr 272218 common removexattr sys_removexattr
261219 common lremovexattr sys_lremovexattr 273219 common lremovexattr sys_lremovexattr
262220 common fremovexattr sys_fremovexattr 274220 common fremovexattr sys_fremovexattr
263221 common futex sys_futex compat_sys_futex 275221 32 futex sys_futex_time32
276221 64 futex sys_futex
277221 spu futex sys_futex
264222 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity 278222 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity
265223 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity 279223 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity
266# 224 unused 280# 224 unused
@@ -268,7 +282,9 @@
268226 32 sendfile64 sys_sendfile64 compat_sys_sendfile64 282226 32 sendfile64 sys_sendfile64 compat_sys_sendfile64
269227 common io_setup sys_io_setup compat_sys_io_setup 283227 common io_setup sys_io_setup compat_sys_io_setup
270228 common io_destroy sys_io_destroy 284228 common io_destroy sys_io_destroy
271229 common io_getevents sys_io_getevents compat_sys_io_getevents 285229 32 io_getevents sys_io_getevents_time32
286229 64 io_getevents sys_io_getevents
287229 spu io_getevents sys_io_getevents
272230 common io_submit sys_io_submit compat_sys_io_submit 288230 common io_submit sys_io_submit compat_sys_io_submit
273231 common io_cancel sys_io_cancel 289231 common io_cancel sys_io_cancel
274232 nospu set_tid_address sys_set_tid_address 290232 nospu set_tid_address sys_set_tid_address
@@ -280,19 +296,33 @@
280238 common epoll_wait sys_epoll_wait 296238 common epoll_wait sys_epoll_wait
281239 common remap_file_pages sys_remap_file_pages 297239 common remap_file_pages sys_remap_file_pages
282240 common timer_create sys_timer_create compat_sys_timer_create 298240 common timer_create sys_timer_create compat_sys_timer_create
283241 common timer_settime sys_timer_settime compat_sys_timer_settime 299241 32 timer_settime sys_timer_settime32
284242 common timer_gettime sys_timer_gettime compat_sys_timer_gettime 300241 64 timer_settime sys_timer_settime
301241 spu timer_settime sys_timer_settime
302242 32 timer_gettime sys_timer_gettime32
303242 64 timer_gettime sys_timer_gettime
304242 spu timer_gettime sys_timer_gettime
285243 common timer_getoverrun sys_timer_getoverrun 305243 common timer_getoverrun sys_timer_getoverrun
286244 common timer_delete sys_timer_delete 306244 common timer_delete sys_timer_delete
287245 common clock_settime sys_clock_settime compat_sys_clock_settime 307245 32 clock_settime sys_clock_settime32
288246 common clock_gettime sys_clock_gettime compat_sys_clock_gettime 308245 64 clock_settime sys_clock_settime
289247 common clock_getres sys_clock_getres compat_sys_clock_getres 309245 spu clock_settime sys_clock_settime
290248 common clock_nanosleep sys_clock_nanosleep compat_sys_clock_nanosleep 310246 32 clock_gettime sys_clock_gettime32
311246 64 clock_gettime sys_clock_gettime
312246 spu clock_gettime sys_clock_gettime
313247 32 clock_getres sys_clock_getres_time32
314247 64 clock_getres sys_clock_getres
315247 spu clock_getres sys_clock_getres
316248 32 clock_nanosleep sys_clock_nanosleep_time32
317248 64 clock_nanosleep sys_clock_nanosleep
318248 spu clock_nanosleep sys_clock_nanosleep
291249 32 swapcontext ppc_swapcontext ppc32_swapcontext 319249 32 swapcontext ppc_swapcontext ppc32_swapcontext
292249 64 swapcontext ppc64_swapcontext 320249 64 swapcontext ppc64_swapcontext
293249 spu swapcontext sys_ni_syscall 321249 spu swapcontext sys_ni_syscall
294250 common tgkill sys_tgkill 322250 common tgkill sys_tgkill
295251 common utimes sys_utimes compat_sys_utimes 323251 32 utimes sys_utimes_time32
324251 64 utimes sys_utimes
325251 spu utimes sys_utimes
296252 common statfs64 sys_statfs64 compat_sys_statfs64 326252 common statfs64 sys_statfs64 compat_sys_statfs64
297253 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64 327253 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64
298254 32 fadvise64_64 ppc_fadvise64_64 328254 32 fadvise64_64 ppc_fadvise64_64
@@ -308,8 +338,10 @@
308261 nospu set_mempolicy sys_set_mempolicy compat_sys_set_mempolicy 338261 nospu set_mempolicy sys_set_mempolicy compat_sys_set_mempolicy
309262 nospu mq_open sys_mq_open compat_sys_mq_open 339262 nospu mq_open sys_mq_open compat_sys_mq_open
310263 nospu mq_unlink sys_mq_unlink 340263 nospu mq_unlink sys_mq_unlink
311264 nospu mq_timedsend sys_mq_timedsend compat_sys_mq_timedsend 341264 32 mq_timedsend sys_mq_timedsend_time32
312265 nospu mq_timedreceive sys_mq_timedreceive compat_sys_mq_timedreceive 342264 64 mq_timedsend sys_mq_timedsend
343265 32 mq_timedreceive sys_mq_timedreceive_time32
344265 64 mq_timedreceive sys_mq_timedreceive
313266 nospu mq_notify sys_mq_notify compat_sys_mq_notify 345266 nospu mq_notify sys_mq_notify compat_sys_mq_notify
314267 nospu mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr 346267 nospu mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr
315268 nospu kexec_load sys_kexec_load compat_sys_kexec_load 347268 nospu kexec_load sys_kexec_load compat_sys_kexec_load
@@ -324,8 +356,10 @@
324277 nospu inotify_rm_watch sys_inotify_rm_watch 356277 nospu inotify_rm_watch sys_inotify_rm_watch
325278 nospu spu_run sys_spu_run 357278 nospu spu_run sys_spu_run
326279 nospu spu_create sys_spu_create 358279 nospu spu_create sys_spu_create
327280 nospu pselect6 sys_pselect6 compat_sys_pselect6 359280 32 pselect6 sys_pselect6_time32 compat_sys_pselect6_time32
328281 nospu ppoll sys_ppoll compat_sys_ppoll 360280 64 pselect6 sys_pselect6
361281 32 ppoll sys_ppoll_time32 compat_sys_ppoll_time32
362281 64 ppoll sys_ppoll
329282 common unshare sys_unshare 363282 common unshare sys_unshare
330283 common splice sys_splice 364283 common splice sys_splice
331284 common tee sys_tee 365284 common tee sys_tee
@@ -334,7 +368,9 @@
334287 common mkdirat sys_mkdirat 368287 common mkdirat sys_mkdirat
335288 common mknodat sys_mknodat 369288 common mknodat sys_mknodat
336289 common fchownat sys_fchownat 370289 common fchownat sys_fchownat
337290 common futimesat sys_futimesat compat_sys_futimesat 371290 32 futimesat sys_futimesat_time32
372290 64 futimesat sys_futimesat
373290 spu utimesat sys_futimesat
338291 32 fstatat64 sys_fstatat64 374291 32 fstatat64 sys_fstatat64
339291 64 newfstatat sys_newfstatat 375291 64 newfstatat sys_newfstatat
340291 spu newfstatat sys_newfstatat 376291 spu newfstatat sys_newfstatat
@@ -350,15 +386,21 @@
350301 common move_pages sys_move_pages compat_sys_move_pages 386301 common move_pages sys_move_pages compat_sys_move_pages
351302 common getcpu sys_getcpu 387302 common getcpu sys_getcpu
352303 nospu epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait 388303 nospu epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait
353304 common utimensat sys_utimensat compat_sys_utimensat 389304 32 utimensat sys_utimensat_time32
390304 64 utimensat sys_utimensat
391304 spu utimensat sys_utimensat
354305 common signalfd sys_signalfd compat_sys_signalfd 392305 common signalfd sys_signalfd compat_sys_signalfd
355306 common timerfd_create sys_timerfd_create 393306 common timerfd_create sys_timerfd_create
356307 common eventfd sys_eventfd 394307 common eventfd sys_eventfd
357308 common sync_file_range2 sys_sync_file_range2 compat_sys_sync_file_range2 395308 common sync_file_range2 sys_sync_file_range2 compat_sys_sync_file_range2
358309 nospu fallocate sys_fallocate compat_sys_fallocate 396309 nospu fallocate sys_fallocate compat_sys_fallocate
359310 nospu subpage_prot sys_subpage_prot 397310 nospu subpage_prot sys_subpage_prot
360311 common timerfd_settime sys_timerfd_settime compat_sys_timerfd_settime 398311 32 timerfd_settime sys_timerfd_settime32
361312 common timerfd_gettime sys_timerfd_gettime compat_sys_timerfd_gettime 399311 64 timerfd_settime sys_timerfd_settime
400311 spu timerfd_settime sys_timerfd_settime
401312 32 timerfd_gettime sys_timerfd_gettime32
402312 64 timerfd_gettime sys_timerfd_gettime
403312 spu timerfd_gettime sys_timerfd_gettime
362313 common signalfd4 sys_signalfd4 compat_sys_signalfd4 404313 common signalfd4 sys_signalfd4 compat_sys_signalfd4
363314 common eventfd2 sys_eventfd2 405314 common eventfd2 sys_eventfd2
364315 common epoll_create1 sys_epoll_create1 406315 common epoll_create1 sys_epoll_create1
@@ -389,11 +431,15 @@
389340 common getsockopt sys_getsockopt compat_sys_getsockopt 431340 common getsockopt sys_getsockopt compat_sys_getsockopt
390341 common sendmsg sys_sendmsg compat_sys_sendmsg 432341 common sendmsg sys_sendmsg compat_sys_sendmsg
391342 common recvmsg sys_recvmsg compat_sys_recvmsg 433342 common recvmsg sys_recvmsg compat_sys_recvmsg
392343 common recvmmsg sys_recvmmsg compat_sys_recvmmsg 434343 32 recvmmsg sys_recvmmsg_time32 compat_sys_recvmmsg_time32
435343 64 recvmmsg sys_recvmmsg
436343 spu recvmmsg sys_recvmmsg
393344 common accept4 sys_accept4 437344 common accept4 sys_accept4
394345 common name_to_handle_at sys_name_to_handle_at 438345 common name_to_handle_at sys_name_to_handle_at
395346 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at 439346 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at
396347 common clock_adjtime sys_clock_adjtime compat_sys_clock_adjtime 440347 32 clock_adjtime sys_clock_adjtime32
441347 64 clock_adjtime sys_clock_adjtime
442347 spu clock_adjtime sys_clock_adjtime
397348 common syncfs sys_syncfs 443348 common syncfs sys_syncfs
398349 common sendmmsg sys_sendmmsg compat_sys_sendmmsg 444349 common sendmmsg sys_sendmmsg compat_sys_sendmmsg
399350 common setns sys_setns 445350 common setns sys_setns
@@ -425,7 +471,8 @@
425385 nospu pkey_free sys_pkey_free 471385 nospu pkey_free sys_pkey_free
426386 nospu pkey_mprotect sys_pkey_mprotect 472386 nospu pkey_mprotect sys_pkey_mprotect
427387 nospu rseq sys_rseq 473387 nospu rseq sys_rseq
428388 nospu io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents 474388 32 io_pgetevents sys_io_pgetevents_time32 compat_sys_io_pgetevents
475388 64 io_pgetevents sys_io_pgetevents
429# room for arch specific syscalls 476# room for arch specific syscalls
430392 64 semtimedop sys_semtimedop 477392 64 semtimedop sys_semtimedop
431393 common semget sys_semget 478393 common semget sys_semget
@@ -438,3 +485,23 @@
438400 common msgsnd sys_msgsnd compat_sys_msgsnd 485400 common msgsnd sys_msgsnd compat_sys_msgsnd
439401 common msgrcv sys_msgrcv compat_sys_msgrcv 486401 common msgrcv sys_msgrcv compat_sys_msgrcv
440402 common msgctl sys_msgctl compat_sys_msgctl 487402 common msgctl sys_msgctl compat_sys_msgctl
488403 32 clock_gettime64 sys_clock_gettime sys_clock_gettime
489404 32 clock_settime64 sys_clock_settime sys_clock_settime
490405 32 clock_adjtime64 sys_clock_adjtime sys_clock_adjtime
491406 32 clock_getres_time64 sys_clock_getres sys_clock_getres
492407 32 clock_nanosleep_time64 sys_clock_nanosleep sys_clock_nanosleep
493408 32 timer_gettime64 sys_timer_gettime sys_timer_gettime
494409 32 timer_settime64 sys_timer_settime sys_timer_settime
495410 32 timerfd_gettime64 sys_timerfd_gettime sys_timerfd_gettime
496411 32 timerfd_settime64 sys_timerfd_settime sys_timerfd_settime
497412 32 utimensat_time64 sys_utimensat sys_utimensat
498413 32 pselect6_time64 sys_pselect6 compat_sys_pselect6_time64
499414 32 ppoll_time64 sys_ppoll compat_sys_ppoll_time64
500416 32 io_pgetevents_time64 sys_io_pgetevents sys_io_pgetevents
501417 32 recvmmsg_time64 sys_recvmmsg compat_sys_recvmmsg_time64
502418 32 mq_timedsend_time64 sys_mq_timedsend sys_mq_timedsend
503419 32 mq_timedreceive_time64 sys_mq_timedreceive sys_mq_timedreceive
504420 32 semtimedop_time64 sys_semtimedop sys_semtimedop
505421 32 rt_sigtimedwait_time64 sys_rt_sigtimedwait compat_sys_rt_sigtimedwait_time64
506422 32 futex_time64 sys_futex sys_futex
507423 32 sched_rr_get_interval_time64 sys_sched_rr_get_interval sys_sched_rr_get_interval
diff --git a/arch/s390/include/asm/unistd.h b/arch/s390/include/asm/unistd.h
index 59202ceea1f6..b6755685c7b8 100644
--- a/arch/s390/include/asm/unistd.h
+++ b/arch/s390/include/asm/unistd.h
@@ -28,7 +28,7 @@
28#define __ARCH_WANT_SYS_SIGPENDING 28#define __ARCH_WANT_SYS_SIGPENDING
29#define __ARCH_WANT_SYS_SIGPROCMASK 29#define __ARCH_WANT_SYS_SIGPROCMASK
30# ifdef CONFIG_COMPAT 30# ifdef CONFIG_COMPAT
31# define __ARCH_WANT_COMPAT_SYS_TIME 31# define __ARCH_WANT_SYS_TIME32
32# define __ARCH_WANT_SYS_UTIME32 32# define __ARCH_WANT_SYS_UTIME32
33# endif 33# endif
34#define __ARCH_WANT_SYS_FORK 34#define __ARCH_WANT_SYS_FORK
diff --git a/arch/s390/kernel/syscalls/syscall.tbl b/arch/s390/kernel/syscalls/syscall.tbl
index 620e222003ca..02579f95f391 100644
--- a/arch/s390/kernel/syscalls/syscall.tbl
+++ b/arch/s390/kernel/syscalls/syscall.tbl
@@ -20,7 +20,7 @@
2010 common unlink sys_unlink sys_unlink 2010 common unlink sys_unlink sys_unlink
2111 common execve sys_execve compat_sys_execve 2111 common execve sys_execve compat_sys_execve
2212 common chdir sys_chdir sys_chdir 2212 common chdir sys_chdir sys_chdir
2313 32 time - compat_sys_time 2313 32 time - sys_time32
2414 common mknod sys_mknod sys_mknod 2414 common mknod sys_mknod sys_mknod
2515 common chmod sys_chmod sys_chmod 2515 common chmod sys_chmod sys_chmod
2616 32 lchown - sys_lchown16 2616 32 lchown - sys_lchown16
@@ -30,11 +30,11 @@
3022 common umount sys_oldumount sys_oldumount 3022 common umount sys_oldumount sys_oldumount
3123 32 setuid - sys_setuid16 3123 32 setuid - sys_setuid16
3224 32 getuid - sys_getuid16 3224 32 getuid - sys_getuid16
3325 32 stime - compat_sys_stime 3325 32 stime - sys_stime32
3426 common ptrace sys_ptrace compat_sys_ptrace 3426 common ptrace sys_ptrace compat_sys_ptrace
3527 common alarm sys_alarm sys_alarm 3527 common alarm sys_alarm sys_alarm
3629 common pause sys_pause sys_pause 3629 common pause sys_pause sys_pause
3730 common utime sys_utime compat_sys_utime 3730 common utime sys_utime sys_utime32
3833 common access sys_access sys_access 3833 common access sys_access sys_access
3934 common nice sys_nice sys_nice 3934 common nice sys_nice sys_nice
4036 common sync sys_sync sys_sync 4036 common sync sys_sync sys_sync
@@ -112,7 +112,7 @@
112120 common clone sys_clone sys_clone 112120 common clone sys_clone sys_clone
113121 common setdomainname sys_setdomainname sys_setdomainname 113121 common setdomainname sys_setdomainname sys_setdomainname
114122 common uname sys_newuname sys_newuname 114122 common uname sys_newuname sys_newuname
115124 common adjtimex sys_adjtimex compat_sys_adjtimex 115124 common adjtimex sys_adjtimex sys_adjtimex_time32
116125 common mprotect sys_mprotect sys_mprotect 116125 common mprotect sys_mprotect sys_mprotect
117126 common sigprocmask sys_sigprocmask compat_sys_sigprocmask 117126 common sigprocmask sys_sigprocmask compat_sys_sigprocmask
118127 common create_module - - 118127 common create_module - -
@@ -150,8 +150,8 @@
150158 common sched_yield sys_sched_yield sys_sched_yield 150158 common sched_yield sys_sched_yield sys_sched_yield
151159 common sched_get_priority_max sys_sched_get_priority_max sys_sched_get_priority_max 151159 common sched_get_priority_max sys_sched_get_priority_max sys_sched_get_priority_max
152160 common sched_get_priority_min sys_sched_get_priority_min sys_sched_get_priority_min 152160 common sched_get_priority_min sys_sched_get_priority_min sys_sched_get_priority_min
153161 common sched_rr_get_interval sys_sched_rr_get_interval compat_sys_sched_rr_get_interval 153161 common sched_rr_get_interval sys_sched_rr_get_interval sys_sched_rr_get_interval_time32
154162 common nanosleep sys_nanosleep compat_sys_nanosleep 154162 common nanosleep sys_nanosleep sys_nanosleep_time32
155163 common mremap sys_mremap sys_mremap 155163 common mremap sys_mremap sys_mremap
156164 32 setresuid - sys_setresuid16 156164 32 setresuid - sys_setresuid16
157165 32 getresuid - sys_getresuid16 157165 32 getresuid - sys_getresuid16
@@ -165,7 +165,7 @@
165174 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction 165174 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction
166175 common rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask 166175 common rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask
167176 common rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending 167176 common rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending
168177 common rt_sigtimedwait sys_rt_sigtimedwait compat_sys_rt_sigtimedwait 168177 common rt_sigtimedwait sys_rt_sigtimedwait compat_sys_rt_sigtimedwait_time32
169178 common rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo 169178 common rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo
170179 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend 170179 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend
171180 common pread64 sys_pread64 compat_sys_s390_pread64 171180 common pread64 sys_pread64 compat_sys_s390_pread64
@@ -246,13 +246,13 @@
246235 common fremovexattr sys_fremovexattr sys_fremovexattr 246235 common fremovexattr sys_fremovexattr sys_fremovexattr
247236 common gettid sys_gettid sys_gettid 247236 common gettid sys_gettid sys_gettid
248237 common tkill sys_tkill sys_tkill 248237 common tkill sys_tkill sys_tkill
249238 common futex sys_futex compat_sys_futex 249238 common futex sys_futex sys_futex_time32
250239 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity 250239 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity
251240 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity 251240 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity
252241 common tgkill sys_tgkill sys_tgkill 252241 common tgkill sys_tgkill sys_tgkill
253243 common io_setup sys_io_setup compat_sys_io_setup 253243 common io_setup sys_io_setup compat_sys_io_setup
254244 common io_destroy sys_io_destroy sys_io_destroy 254244 common io_destroy sys_io_destroy sys_io_destroy
255245 common io_getevents sys_io_getevents compat_sys_io_getevents 255245 common io_getevents sys_io_getevents sys_io_getevents_time32
256246 common io_submit sys_io_submit compat_sys_io_submit 256246 common io_submit sys_io_submit compat_sys_io_submit
257247 common io_cancel sys_io_cancel sys_io_cancel 257247 common io_cancel sys_io_cancel sys_io_cancel
258248 common exit_group sys_exit_group sys_exit_group 258248 common exit_group sys_exit_group sys_exit_group
@@ -262,14 +262,14 @@
262252 common set_tid_address sys_set_tid_address sys_set_tid_address 262252 common set_tid_address sys_set_tid_address sys_set_tid_address
263253 common fadvise64 sys_fadvise64_64 compat_sys_s390_fadvise64 263253 common fadvise64 sys_fadvise64_64 compat_sys_s390_fadvise64
264254 common timer_create sys_timer_create compat_sys_timer_create 264254 common timer_create sys_timer_create compat_sys_timer_create
265255 common timer_settime sys_timer_settime compat_sys_timer_settime 265255 common timer_settime sys_timer_settime sys_timer_settime32
266256 common timer_gettime sys_timer_gettime compat_sys_timer_gettime 266256 common timer_gettime sys_timer_gettime sys_timer_gettime32
267257 common timer_getoverrun sys_timer_getoverrun sys_timer_getoverrun 267257 common timer_getoverrun sys_timer_getoverrun sys_timer_getoverrun
268258 common timer_delete sys_timer_delete sys_timer_delete 268258 common timer_delete sys_timer_delete sys_timer_delete
269259 common clock_settime sys_clock_settime compat_sys_clock_settime 269259 common clock_settime sys_clock_settime sys_clock_settime32
270260 common clock_gettime sys_clock_gettime compat_sys_clock_gettime 270260 common clock_gettime sys_clock_gettime sys_clock_gettime32
271261 common clock_getres sys_clock_getres compat_sys_clock_getres 271261 common clock_getres sys_clock_getres sys_clock_getres_time32
272262 common clock_nanosleep sys_clock_nanosleep compat_sys_clock_nanosleep 272262 common clock_nanosleep sys_clock_nanosleep sys_clock_nanosleep_time32
273264 32 fadvise64_64 - compat_sys_s390_fadvise64_64 273264 32 fadvise64_64 - compat_sys_s390_fadvise64_64
274265 common statfs64 sys_statfs64 compat_sys_statfs64 274265 common statfs64 sys_statfs64 compat_sys_statfs64
275266 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64 275266 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64
@@ -279,8 +279,8 @@
279270 common set_mempolicy sys_set_mempolicy compat_sys_set_mempolicy 279270 common set_mempolicy sys_set_mempolicy compat_sys_set_mempolicy
280271 common mq_open sys_mq_open compat_sys_mq_open 280271 common mq_open sys_mq_open compat_sys_mq_open
281272 common mq_unlink sys_mq_unlink sys_mq_unlink 281272 common mq_unlink sys_mq_unlink sys_mq_unlink
282273 common mq_timedsend sys_mq_timedsend compat_sys_mq_timedsend 282273 common mq_timedsend sys_mq_timedsend sys_mq_timedsend_time32
283274 common mq_timedreceive sys_mq_timedreceive compat_sys_mq_timedreceive 283274 common mq_timedreceive sys_mq_timedreceive sys_mq_timedreceive_time32
284275 common mq_notify sys_mq_notify compat_sys_mq_notify 284275 common mq_notify sys_mq_notify compat_sys_mq_notify
285276 common mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr 285276 common mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr
286277 common kexec_load sys_kexec_load compat_sys_kexec_load 286277 common kexec_load sys_kexec_load compat_sys_kexec_load
@@ -298,7 +298,7 @@
298289 common mkdirat sys_mkdirat sys_mkdirat 298289 common mkdirat sys_mkdirat sys_mkdirat
299290 common mknodat sys_mknodat sys_mknodat 299290 common mknodat sys_mknodat sys_mknodat
300291 common fchownat sys_fchownat sys_fchownat 300291 common fchownat sys_fchownat sys_fchownat
301292 common futimesat sys_futimesat compat_sys_futimesat 301292 common futimesat sys_futimesat sys_futimesat_time32
302293 32 fstatat64 - compat_sys_s390_fstatat64 302293 32 fstatat64 - compat_sys_s390_fstatat64
303293 64 newfstatat sys_newfstatat - 303293 64 newfstatat sys_newfstatat -
304294 common unlinkat sys_unlinkat sys_unlinkat 304294 common unlinkat sys_unlinkat sys_unlinkat
@@ -308,8 +308,8 @@
308298 common readlinkat sys_readlinkat sys_readlinkat 308298 common readlinkat sys_readlinkat sys_readlinkat
309299 common fchmodat sys_fchmodat sys_fchmodat 309299 common fchmodat sys_fchmodat sys_fchmodat
310300 common faccessat sys_faccessat sys_faccessat 310300 common faccessat sys_faccessat sys_faccessat
311301 common pselect6 sys_pselect6 compat_sys_pselect6 311301 common pselect6 sys_pselect6 compat_sys_pselect6_time32
312302 common ppoll sys_ppoll compat_sys_ppoll 312302 common ppoll sys_ppoll compat_sys_ppoll_time32
313303 common unshare sys_unshare sys_unshare 313303 common unshare sys_unshare sys_unshare
314304 common set_robust_list sys_set_robust_list compat_sys_set_robust_list 314304 common set_robust_list sys_set_robust_list compat_sys_set_robust_list
315305 common get_robust_list sys_get_robust_list compat_sys_get_robust_list 315305 common get_robust_list sys_get_robust_list compat_sys_get_robust_list
@@ -320,15 +320,15 @@
320310 common move_pages sys_move_pages compat_sys_move_pages 320310 common move_pages sys_move_pages compat_sys_move_pages
321311 common getcpu sys_getcpu sys_getcpu 321311 common getcpu sys_getcpu sys_getcpu
322312 common epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait 322312 common epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait
323313 common utimes sys_utimes compat_sys_utimes 323313 common utimes sys_utimes sys_utimes_time32
324314 common fallocate sys_fallocate compat_sys_s390_fallocate 324314 common fallocate sys_fallocate compat_sys_s390_fallocate
325315 common utimensat sys_utimensat compat_sys_utimensat 325315 common utimensat sys_utimensat sys_utimensat_time32
326316 common signalfd sys_signalfd compat_sys_signalfd 326316 common signalfd sys_signalfd compat_sys_signalfd
327317 common timerfd - - 327317 common timerfd - -
328318 common eventfd sys_eventfd sys_eventfd 328318 common eventfd sys_eventfd sys_eventfd
329319 common timerfd_create sys_timerfd_create sys_timerfd_create 329319 common timerfd_create sys_timerfd_create sys_timerfd_create
330320 common timerfd_settime sys_timerfd_settime compat_sys_timerfd_settime 330320 common timerfd_settime sys_timerfd_settime sys_timerfd_settime32
331321 common timerfd_gettime sys_timerfd_gettime compat_sys_timerfd_gettime 331321 common timerfd_gettime sys_timerfd_gettime sys_timerfd_gettime32
332322 common signalfd4 sys_signalfd4 compat_sys_signalfd4 332322 common signalfd4 sys_signalfd4 compat_sys_signalfd4
333323 common eventfd2 sys_eventfd2 sys_eventfd2 333323 common eventfd2 sys_eventfd2 sys_eventfd2
334324 common inotify_init1 sys_inotify_init1 sys_inotify_init1 334324 common inotify_init1 sys_inotify_init1 sys_inotify_init1
@@ -344,7 +344,7 @@
344334 common prlimit64 sys_prlimit64 sys_prlimit64 344334 common prlimit64 sys_prlimit64 sys_prlimit64
345335 common name_to_handle_at sys_name_to_handle_at sys_name_to_handle_at 345335 common name_to_handle_at sys_name_to_handle_at sys_name_to_handle_at
346336 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at 346336 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at
347337 common clock_adjtime sys_clock_adjtime compat_sys_clock_adjtime 347337 common clock_adjtime sys_clock_adjtime sys_clock_adjtime32
348338 common syncfs sys_syncfs sys_syncfs 348338 common syncfs sys_syncfs sys_syncfs
349339 common setns sys_setns sys_setns 349339 common setns sys_setns sys_setns
350340 common process_vm_readv sys_process_vm_readv compat_sys_process_vm_readv 350340 common process_vm_readv sys_process_vm_readv compat_sys_process_vm_readv
@@ -364,7 +364,7 @@
364354 common execveat sys_execveat compat_sys_execveat 364354 common execveat sys_execveat compat_sys_execveat
365355 common userfaultfd sys_userfaultfd sys_userfaultfd 365355 common userfaultfd sys_userfaultfd sys_userfaultfd
366356 common membarrier sys_membarrier sys_membarrier 366356 common membarrier sys_membarrier sys_membarrier
367357 common recvmmsg sys_recvmmsg compat_sys_recvmmsg 367357 common recvmmsg sys_recvmmsg compat_sys_recvmmsg_time32
368358 common sendmmsg sys_sendmmsg compat_sys_sendmmsg 368358 common sendmmsg sys_sendmmsg compat_sys_sendmmsg
369359 common socket sys_socket sys_socket 369359 common socket sys_socket sys_socket
370360 common socketpair sys_socketpair sys_socketpair 370360 common socketpair sys_socketpair sys_socketpair
@@ -406,3 +406,23 @@
406400 common msgsnd sys_msgsnd compat_sys_msgsnd 406400 common msgsnd sys_msgsnd compat_sys_msgsnd
407401 common msgrcv sys_msgrcv compat_sys_msgrcv 407401 common msgrcv sys_msgrcv compat_sys_msgrcv
408402 common msgctl sys_msgctl compat_sys_msgctl 408402 common msgctl sys_msgctl compat_sys_msgctl
409403 32 clock_gettime64 - sys_clock_gettime
410404 32 clock_settime64 - sys_clock_settime
411405 32 clock_adjtime64 - sys_clock_adjtime
412406 32 clock_getres_time64 - sys_clock_getres
413407 32 clock_nanosleep_time64 - sys_clock_nanosleep
414408 32 timer_gettime64 - sys_timer_gettime
415409 32 timer_settime64 - sys_timer_settime
416410 32 timerfd_gettime64 - sys_timerfd_gettime
417411 32 timerfd_settime64 - sys_timerfd_settime
418412 32 utimensat_time64 - sys_utimensat
419413 32 pselect6_time64 - compat_sys_pselect6_time64
420414 32 ppoll_time64 - compat_sys_ppoll_time64
421416 32 io_pgetevents_time64 - sys_io_pgetevents
422417 32 recvmmsg_time64 - compat_sys_recvmmsg_time64
423418 32 mq_timedsend_time64 - sys_mq_timedsend
424419 32 mq_timedreceive_time64 - sys_mq_timedreceive
425420 32 semtimedop_time64 - sys_semtimedop
426421 32 rt_sigtimedwait_time64 - compat_sys_rt_sigtimedwait_time64
427422 32 futex_time64 - sys_futex
428423 32 sched_rr_get_interval_time64 - sys_sched_rr_get_interval
diff --git a/arch/sh/include/asm/unistd.h b/arch/sh/include/asm/unistd.h
index a97f93ca3bd7..9c7d9d9999c6 100644
--- a/arch/sh/include/asm/unistd.h
+++ b/arch/sh/include/asm/unistd.h
@@ -16,8 +16,8 @@
16# define __ARCH_WANT_SYS_IPC 16# define __ARCH_WANT_SYS_IPC
17# define __ARCH_WANT_SYS_PAUSE 17# define __ARCH_WANT_SYS_PAUSE
18# define __ARCH_WANT_SYS_SIGNAL 18# define __ARCH_WANT_SYS_SIGNAL
19# define __ARCH_WANT_SYS_TIME 19# define __ARCH_WANT_SYS_TIME32
20# define __ARCH_WANT_SYS_UTIME 20# define __ARCH_WANT_SYS_UTIME32
21# define __ARCH_WANT_SYS_WAITPID 21# define __ARCH_WANT_SYS_WAITPID
22# define __ARCH_WANT_SYS_SOCKETCALL 22# define __ARCH_WANT_SYS_SOCKETCALL
23# define __ARCH_WANT_SYS_FADVISE64 23# define __ARCH_WANT_SYS_FADVISE64
diff --git a/arch/sh/kernel/syscalls/syscall.tbl b/arch/sh/kernel/syscalls/syscall.tbl
index cafa63c6a932..bfda678576e4 100644
--- a/arch/sh/kernel/syscalls/syscall.tbl
+++ b/arch/sh/kernel/syscalls/syscall.tbl
@@ -20,7 +20,7 @@
2010 common unlink sys_unlink 2010 common unlink sys_unlink
2111 common execve sys_execve 2111 common execve sys_execve
2212 common chdir sys_chdir 2212 common chdir sys_chdir
2313 common time sys_time 2313 common time sys_time32
2414 common mknod sys_mknod 2414 common mknod sys_mknod
2515 common chmod sys_chmod 2515 common chmod sys_chmod
2616 common lchown sys_lchown16 2616 common lchown sys_lchown16
@@ -32,12 +32,12 @@
3222 common umount sys_oldumount 3222 common umount sys_oldumount
3323 common setuid sys_setuid16 3323 common setuid sys_setuid16
3424 common getuid sys_getuid16 3424 common getuid sys_getuid16
3525 common stime sys_stime 3525 common stime sys_stime32
3626 common ptrace sys_ptrace 3626 common ptrace sys_ptrace
3727 common alarm sys_alarm 3727 common alarm sys_alarm
3828 common oldfstat sys_fstat 3828 common oldfstat sys_fstat
3929 common pause sys_pause 3929 common pause sys_pause
4030 common utime sys_utime 4030 common utime sys_utime32
41# 31 was stty 41# 31 was stty
42# 32 was gtty 42# 32 was gtty
4333 common access sys_access 4333 common access sys_access
@@ -131,7 +131,7 @@
131121 common setdomainname sys_setdomainname 131121 common setdomainname sys_setdomainname
132122 common uname sys_newuname 132122 common uname sys_newuname
133123 common cacheflush sys_cacheflush 133123 common cacheflush sys_cacheflush
134124 common adjtimex sys_adjtimex 134124 common adjtimex sys_adjtimex_time32
135125 common mprotect sys_mprotect 135125 common mprotect sys_mprotect
136126 common sigprocmask sys_sigprocmask 136126 common sigprocmask sys_sigprocmask
137# 127 was create_module 137# 127 was create_module
@@ -168,8 +168,8 @@
168158 common sched_yield sys_sched_yield 168158 common sched_yield sys_sched_yield
169159 common sched_get_priority_max sys_sched_get_priority_max 169159 common sched_get_priority_max sys_sched_get_priority_max
170160 common sched_get_priority_min sys_sched_get_priority_min 170160 common sched_get_priority_min sys_sched_get_priority_min
171161 common sched_rr_get_interval sys_sched_rr_get_interval 171161 common sched_rr_get_interval sys_sched_rr_get_interval_time32
172162 common nanosleep sys_nanosleep 172162 common nanosleep sys_nanosleep_time32
173163 common mremap sys_mremap 173163 common mremap sys_mremap
174164 common setresuid sys_setresuid16 174164 common setresuid sys_setresuid16
175165 common getresuid sys_getresuid16 175165 common getresuid sys_getresuid16
@@ -184,7 +184,7 @@
184174 common rt_sigaction sys_rt_sigaction 184174 common rt_sigaction sys_rt_sigaction
185175 common rt_sigprocmask sys_rt_sigprocmask 185175 common rt_sigprocmask sys_rt_sigprocmask
186176 common rt_sigpending sys_rt_sigpending 186176 common rt_sigpending sys_rt_sigpending
187177 common rt_sigtimedwait sys_rt_sigtimedwait 187177 common rt_sigtimedwait sys_rt_sigtimedwait_time32
188178 common rt_sigqueueinfo sys_rt_sigqueueinfo 188178 common rt_sigqueueinfo sys_rt_sigqueueinfo
189179 common rt_sigsuspend sys_rt_sigsuspend 189179 common rt_sigsuspend sys_rt_sigsuspend
190180 common pread64 sys_pread_wrapper 190180 common pread64 sys_pread_wrapper
@@ -247,14 +247,14 @@
247237 common fremovexattr sys_fremovexattr 247237 common fremovexattr sys_fremovexattr
248238 common tkill sys_tkill 248238 common tkill sys_tkill
249239 common sendfile64 sys_sendfile64 249239 common sendfile64 sys_sendfile64
250240 common futex sys_futex 250240 common futex sys_futex_time32
251241 common sched_setaffinity sys_sched_setaffinity 251241 common sched_setaffinity sys_sched_setaffinity
252242 common sched_getaffinity sys_sched_getaffinity 252242 common sched_getaffinity sys_sched_getaffinity
253# 243 is reserved for set_thread_area 253# 243 is reserved for set_thread_area
254# 244 is reserved for get_thread_area 254# 244 is reserved for get_thread_area
255245 common io_setup sys_io_setup 255245 common io_setup sys_io_setup
256246 common io_destroy sys_io_destroy 256246 common io_destroy sys_io_destroy
257247 common io_getevents sys_io_getevents 257247 common io_getevents sys_io_getevents_time32
258248 common io_submit sys_io_submit 258248 common io_submit sys_io_submit
259249 common io_cancel sys_io_cancel 259249 common io_cancel sys_io_cancel
260250 common fadvise64 sys_fadvise64 260250 common fadvise64 sys_fadvise64
@@ -267,18 +267,18 @@
267257 common remap_file_pages sys_remap_file_pages 267257 common remap_file_pages sys_remap_file_pages
268258 common set_tid_address sys_set_tid_address 268258 common set_tid_address sys_set_tid_address
269259 common timer_create sys_timer_create 269259 common timer_create sys_timer_create
270260 common timer_settime sys_timer_settime 270260 common timer_settime sys_timer_settime32
271261 common timer_gettime sys_timer_gettime 271261 common timer_gettime sys_timer_gettime32
272262 common timer_getoverrun sys_timer_getoverrun 272262 common timer_getoverrun sys_timer_getoverrun
273263 common timer_delete sys_timer_delete 273263 common timer_delete sys_timer_delete
274264 common clock_settime sys_clock_settime 274264 common clock_settime sys_clock_settime32
275265 common clock_gettime sys_clock_gettime 275265 common clock_gettime sys_clock_gettime32
276266 common clock_getres sys_clock_getres 276266 common clock_getres sys_clock_getres_time32
277267 common clock_nanosleep sys_clock_nanosleep 277267 common clock_nanosleep sys_clock_nanosleep_time32
278268 common statfs64 sys_statfs64 278268 common statfs64 sys_statfs64
279269 common fstatfs64 sys_fstatfs64 279269 common fstatfs64 sys_fstatfs64
280270 common tgkill sys_tgkill 280270 common tgkill sys_tgkill
281271 common utimes sys_utimes 281271 common utimes sys_utimes_time32
282272 common fadvise64_64 sys_fadvise64_64_wrapper 282272 common fadvise64_64 sys_fadvise64_64_wrapper
283# 273 is reserved for vserver 283# 273 is reserved for vserver
284274 common mbind sys_mbind 284274 common mbind sys_mbind
@@ -286,8 +286,8 @@
286276 common set_mempolicy sys_set_mempolicy 286276 common set_mempolicy sys_set_mempolicy
287277 common mq_open sys_mq_open 287277 common mq_open sys_mq_open
288278 common mq_unlink sys_mq_unlink 288278 common mq_unlink sys_mq_unlink
289279 common mq_timedsend sys_mq_timedsend 289279 common mq_timedsend sys_mq_timedsend_time32
290280 common mq_timedreceive sys_mq_timedreceive 290280 common mq_timedreceive sys_mq_timedreceive_time32
291281 common mq_notify sys_mq_notify 291281 common mq_notify sys_mq_notify
292282 common mq_getsetattr sys_mq_getsetattr 292282 common mq_getsetattr sys_mq_getsetattr
293283 common kexec_load sys_kexec_load 293283 common kexec_load sys_kexec_load
@@ -306,7 +306,7 @@
306296 common mkdirat sys_mkdirat 306296 common mkdirat sys_mkdirat
307297 common mknodat sys_mknodat 307297 common mknodat sys_mknodat
308298 common fchownat sys_fchownat 308298 common fchownat sys_fchownat
309299 common futimesat sys_futimesat 309299 common futimesat sys_futimesat_time32
310300 common fstatat64 sys_fstatat64 310300 common fstatat64 sys_fstatat64
311301 common unlinkat sys_unlinkat 311301 common unlinkat sys_unlinkat
312302 common renameat sys_renameat 312302 common renameat sys_renameat
@@ -315,8 +315,8 @@
315305 common readlinkat sys_readlinkat 315305 common readlinkat sys_readlinkat
316306 common fchmodat sys_fchmodat 316306 common fchmodat sys_fchmodat
317307 common faccessat sys_faccessat 317307 common faccessat sys_faccessat
318308 common pselect6 sys_pselect6 318308 common pselect6 sys_pselect6_time32
319309 common ppoll sys_ppoll 319309 common ppoll sys_ppoll_time32
320310 common unshare sys_unshare 320310 common unshare sys_unshare
321311 common set_robust_list sys_set_robust_list 321311 common set_robust_list sys_set_robust_list
322312 common get_robust_list sys_get_robust_list 322312 common get_robust_list sys_get_robust_list
@@ -327,13 +327,13 @@
327317 common move_pages sys_move_pages 327317 common move_pages sys_move_pages
328318 common getcpu sys_getcpu 328318 common getcpu sys_getcpu
329319 common epoll_pwait sys_epoll_pwait 329319 common epoll_pwait sys_epoll_pwait
330320 common utimensat sys_utimensat 330320 common utimensat sys_utimensat_time32
331321 common signalfd sys_signalfd 331321 common signalfd sys_signalfd
332322 common timerfd_create sys_timerfd_create 332322 common timerfd_create sys_timerfd_create
333323 common eventfd sys_eventfd 333323 common eventfd sys_eventfd
334324 common fallocate sys_fallocate 334324 common fallocate sys_fallocate
335325 common timerfd_settime sys_timerfd_settime 335325 common timerfd_settime sys_timerfd_settime32
336326 common timerfd_gettime sys_timerfd_gettime 336326 common timerfd_gettime sys_timerfd_gettime32
337327 common signalfd4 sys_signalfd4 337327 common signalfd4 sys_signalfd4
338328 common eventfd2 sys_eventfd2 338328 common eventfd2 sys_eventfd2
339329 common epoll_create1 sys_epoll_create1 339329 common epoll_create1 sys_epoll_create1
@@ -364,11 +364,11 @@
364354 common getsockopt sys_getsockopt 364354 common getsockopt sys_getsockopt
365355 common sendmsg sys_sendmsg 365355 common sendmsg sys_sendmsg
366356 common recvmsg sys_recvmsg 366356 common recvmsg sys_recvmsg
367357 common recvmmsg sys_recvmmsg 367357 common recvmmsg sys_recvmmsg_time32
368358 common accept4 sys_accept4 368358 common accept4 sys_accept4
369359 common name_to_handle_at sys_name_to_handle_at 369359 common name_to_handle_at sys_name_to_handle_at
370360 common open_by_handle_at sys_open_by_handle_at 370360 common open_by_handle_at sys_open_by_handle_at
371361 common clock_adjtime sys_clock_adjtime 371361 common clock_adjtime sys_clock_adjtime32
372362 common syncfs sys_syncfs 372362 common syncfs sys_syncfs
373363 common sendmmsg sys_sendmmsg 373363 common sendmmsg sys_sendmmsg
374364 common setns sys_setns 374364 common setns sys_setns
@@ -406,3 +406,23 @@
406400 common msgsnd sys_msgsnd 406400 common msgsnd sys_msgsnd
407401 common msgrcv sys_msgrcv 407401 common msgrcv sys_msgrcv
408402 common msgctl sys_msgctl 408402 common msgctl sys_msgctl
409403 common clock_gettime64 sys_clock_gettime
410404 common clock_settime64 sys_clock_settime
411405 common clock_adjtime64 sys_clock_adjtime
412406 common clock_getres_time64 sys_clock_getres
413407 common clock_nanosleep_time64 sys_clock_nanosleep
414408 common timer_gettime64 sys_timer_gettime
415409 common timer_settime64 sys_timer_settime
416410 common timerfd_gettime64 sys_timerfd_gettime
417411 common timerfd_settime64 sys_timerfd_settime
418412 common utimensat_time64 sys_utimensat
419413 common pselect6_time64 sys_pselect6
420414 common ppoll_time64 sys_ppoll
421416 common io_pgetevents_time64 sys_io_pgetevents
422417 common recvmmsg_time64 sys_recvmmsg
423418 common mq_timedsend_time64 sys_mq_timedsend
424419 common mq_timedreceive_time64 sys_mq_timedreceive
425420 common semtimedop_time64 sys_semtimedop
426421 common rt_sigtimedwait_time64 sys_rt_sigtimedwait
427422 common futex_time64 sys_futex
428423 common sched_rr_get_interval_time64 sys_sched_rr_get_interval
diff --git a/arch/sparc/include/asm/unistd.h b/arch/sparc/include/asm/unistd.h
index 08696ea5dca8..1e66278ba4a5 100644
--- a/arch/sparc/include/asm/unistd.h
+++ b/arch/sparc/include/asm/unistd.h
@@ -30,8 +30,8 @@
30#define __ARCH_WANT_SYS_GETHOSTNAME 30#define __ARCH_WANT_SYS_GETHOSTNAME
31#define __ARCH_WANT_SYS_PAUSE 31#define __ARCH_WANT_SYS_PAUSE
32#define __ARCH_WANT_SYS_SIGNAL 32#define __ARCH_WANT_SYS_SIGNAL
33#define __ARCH_WANT_SYS_TIME 33#define __ARCH_WANT_SYS_TIME32
34#define __ARCH_WANT_SYS_UTIME 34#define __ARCH_WANT_SYS_UTIME32
35#define __ARCH_WANT_SYS_WAITPID 35#define __ARCH_WANT_SYS_WAITPID
36#define __ARCH_WANT_SYS_SOCKETCALL 36#define __ARCH_WANT_SYS_SOCKETCALL
37#define __ARCH_WANT_SYS_FADVISE64 37#define __ARCH_WANT_SYS_FADVISE64
@@ -43,8 +43,8 @@
43#ifdef __32bit_syscall_numbers__ 43#ifdef __32bit_syscall_numbers__
44#define __ARCH_WANT_SYS_IPC 44#define __ARCH_WANT_SYS_IPC
45#else 45#else
46#define __ARCH_WANT_COMPAT_SYS_TIME 46#define __ARCH_WANT_SYS_TIME
47#define __ARCH_WANT_SYS_UTIME32 47#define __ARCH_WANT_SYS_UTIME
48#define __ARCH_WANT_COMPAT_SYS_SENDFILE 48#define __ARCH_WANT_COMPAT_SYS_SENDFILE
49#endif 49#endif
50 50
diff --git a/arch/sparc/kernel/sys_sparc_64.c b/arch/sparc/kernel/sys_sparc_64.c
index 1c079e7bab09..9825ca6a6020 100644
--- a/arch/sparc/kernel/sys_sparc_64.c
+++ b/arch/sparc/kernel/sys_sparc_64.c
@@ -28,8 +28,9 @@
28#include <linux/random.h> 28#include <linux/random.h>
29#include <linux/export.h> 29#include <linux/export.h>
30#include <linux/context_tracking.h> 30#include <linux/context_tracking.h>
31 31#include <linux/timex.h>
32#include <linux/uaccess.h> 32#include <linux/uaccess.h>
33
33#include <asm/utrap.h> 34#include <asm/utrap.h>
34#include <asm/unistd.h> 35#include <asm/unistd.h>
35 36
@@ -544,6 +545,62 @@ out_unlock:
544 return err; 545 return err;
545} 546}
546 547
548SYSCALL_DEFINE1(sparc_adjtimex, struct timex __user *, txc_p)
549{
550 struct timex txc; /* Local copy of parameter */
551 struct __kernel_timex *kt = (void *)&txc;
552 int ret;
553
554 /* Copy the user data space into the kernel copy
555 * structure. But bear in mind that the structures
556 * may change
557 */
558 if (copy_from_user(&txc, txc_p, sizeof(struct timex)))
559 return -EFAULT;
560
561 /*
562 * override for sparc64 specific timeval type: tv_usec
563 * is 32 bit wide instead of 64-bit in __kernel_timex
564 */
565 kt->time.tv_usec = txc.time.tv_usec;
566 ret = do_adjtimex(kt);
567 txc.time.tv_usec = kt->time.tv_usec;
568
569 return copy_to_user(txc_p, &txc, sizeof(struct timex)) ? -EFAULT : ret;
570}
571
572SYSCALL_DEFINE2(sparc_clock_adjtime, const clockid_t, which_clock,struct timex __user *, txc_p)
573{
574 struct timex txc; /* Local copy of parameter */
575 struct __kernel_timex *kt = (void *)&txc;
576 int ret;
577
578 if (!IS_ENABLED(CONFIG_POSIX_TIMERS)) {
579 pr_err_once("process %d (%s) attempted a POSIX timer syscall "
580 "while CONFIG_POSIX_TIMERS is not set\n",
581 current->pid, current->comm);
582
583 return -ENOSYS;
584 }
585
586 /* Copy the user data space into the kernel copy
587 * structure. But bear in mind that the structures
588 * may change
589 */
590 if (copy_from_user(&txc, txc_p, sizeof(struct timex)))
591 return -EFAULT;
592
593 /*
594 * override for sparc64 specific timeval type: tv_usec
595 * is 32 bit wide instead of 64-bit in __kernel_timex
596 */
597 kt->time.tv_usec = txc.time.tv_usec;
598 ret = do_clock_adjtime(which_clock, kt);
599 txc.time.tv_usec = kt->time.tv_usec;
600
601 return copy_to_user(txc_p, &txc, sizeof(struct timex)) ? -EFAULT : ret;
602}
603
547SYSCALL_DEFINE5(utrap_install, utrap_entry_t, type, 604SYSCALL_DEFINE5(utrap_install, utrap_entry_t, type,
548 utrap_handler_t, new_p, utrap_handler_t, new_d, 605 utrap_handler_t, new_p, utrap_handler_t, new_d,
549 utrap_handler_t __user *, old_p, 606 utrap_handler_t __user *, old_p,
diff --git a/arch/sparc/kernel/syscalls/syscall.tbl b/arch/sparc/kernel/syscalls/syscall.tbl
index 6992d17cce37..b9a5a04b2d2c 100644
--- a/arch/sparc/kernel/syscalls/syscall.tbl
+++ b/arch/sparc/kernel/syscalls/syscall.tbl
@@ -44,7 +44,8 @@
4428 common sigaltstack sys_sigaltstack compat_sys_sigaltstack 4428 common sigaltstack sys_sigaltstack compat_sys_sigaltstack
4529 32 pause sys_pause 4529 32 pause sys_pause
4629 64 pause sys_nis_syscall 4629 64 pause sys_nis_syscall
4730 common utime sys_utime compat_sys_utime 4730 32 utime sys_utime32
4830 64 utime sys_utime
4831 32 lchown32 sys_lchown 4931 32 lchown32 sys_lchown
4932 32 fchown32 sys_fchown 5032 32 fchown32 sys_fchown
5033 common access sys_access 5133 common access sys_access
@@ -128,7 +129,8 @@
128102 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction 129102 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction
129103 common rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask 130103 common rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask
130104 common rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending 131104 common rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending
131105 common rt_sigtimedwait sys_rt_sigtimedwait compat_sys_rt_sigtimedwait 132105 32 rt_sigtimedwait sys_rt_sigtimedwait_time32 compat_sys_rt_sigtimedwait_time32
133105 64 rt_sigtimedwait sys_rt_sigtimedwait
132106 common rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo 134106 common rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo
133107 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend 135107 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend
134108 32 setresuid32 sys_setresuid 136108 32 setresuid32 sys_setresuid
@@ -168,11 +170,13 @@
168135 common socketpair sys_socketpair 170135 common socketpair sys_socketpair
169136 common mkdir sys_mkdir 171136 common mkdir sys_mkdir
170137 common rmdir sys_rmdir 172137 common rmdir sys_rmdir
171138 common utimes sys_utimes compat_sys_utimes 173138 32 utimes sys_utimes_time32
174138 64 utimes sys_utimes
172139 common stat64 sys_stat64 compat_sys_stat64 175139 common stat64 sys_stat64 compat_sys_stat64
173140 common sendfile64 sys_sendfile64 176140 common sendfile64 sys_sendfile64
174141 common getpeername sys_getpeername 177141 common getpeername sys_getpeername
175142 common futex sys_futex compat_sys_futex 178142 32 futex sys_futex_time32
179142 64 futex sys_futex
176143 common gettid sys_gettid 180143 common gettid sys_gettid
177144 common getrlimit sys_getrlimit compat_sys_getrlimit 181144 common getrlimit sys_getrlimit compat_sys_getrlimit
178145 common setrlimit sys_setrlimit compat_sys_setrlimit 182145 common setrlimit sys_setrlimit compat_sys_setrlimit
@@ -258,7 +262,8 @@
258216 64 sigreturn sys_nis_syscall 262216 64 sigreturn sys_nis_syscall
259217 common clone sys_clone 263217 common clone sys_clone
260218 common ioprio_get sys_ioprio_get 264218 common ioprio_get sys_ioprio_get
261219 common adjtimex sys_adjtimex compat_sys_adjtimex 265219 32 adjtimex sys_adjtimex_time32
266219 64 adjtimex sys_sparc_adjtimex
262220 32 sigprocmask sys_sigprocmask compat_sys_sigprocmask 267220 32 sigprocmask sys_sigprocmask compat_sys_sigprocmask
263220 64 sigprocmask sys_nis_syscall 268220 64 sigprocmask sys_nis_syscall
264221 common create_module sys_ni_syscall 269221 common create_module sys_ni_syscall
@@ -271,9 +276,10 @@
271228 common setfsuid sys_setfsuid16 276228 common setfsuid sys_setfsuid16
272229 common setfsgid sys_setfsgid16 277229 common setfsgid sys_setfsgid16
273230 common _newselect sys_select compat_sys_select 278230 common _newselect sys_select compat_sys_select
274231 32 time sys_time compat_sys_time 279231 32 time sys_time32
275232 common splice sys_splice 280232 common splice sys_splice
276233 common stime sys_stime compat_sys_stime 281233 32 stime sys_stime32
282233 64 stime sys_stime
277234 common statfs64 sys_statfs64 compat_sys_statfs64 283234 common statfs64 sys_statfs64 compat_sys_statfs64
278235 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64 284235 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64
279236 common _llseek sys_llseek 285236 common _llseek sys_llseek
@@ -288,8 +294,10 @@
288245 common sched_yield sys_sched_yield 294245 common sched_yield sys_sched_yield
289246 common sched_get_priority_max sys_sched_get_priority_max 295246 common sched_get_priority_max sys_sched_get_priority_max
290247 common sched_get_priority_min sys_sched_get_priority_min 296247 common sched_get_priority_min sys_sched_get_priority_min
291248 common sched_rr_get_interval sys_sched_rr_get_interval compat_sys_sched_rr_get_interval 297248 32 sched_rr_get_interval sys_sched_rr_get_interval_time32
292249 common nanosleep sys_nanosleep compat_sys_nanosleep 298248 64 sched_rr_get_interval sys_sched_rr_get_interval
299249 32 nanosleep sys_nanosleep_time32
300249 64 nanosleep sys_nanosleep
293250 32 mremap sys_mremap 301250 32 mremap sys_mremap
294250 64 mremap sys_64_mremap 302250 64 mremap sys_64_mremap
295251 common _sysctl sys_sysctl compat_sys_sysctl 303251 common _sysctl sys_sysctl compat_sys_sysctl
@@ -298,14 +306,20 @@
298254 32 nfsservctl sys_ni_syscall sys_nis_syscall 306254 32 nfsservctl sys_ni_syscall sys_nis_syscall
299254 64 nfsservctl sys_nis_syscall 307254 64 nfsservctl sys_nis_syscall
300255 common sync_file_range sys_sync_file_range compat_sys_sync_file_range 308255 common sync_file_range sys_sync_file_range compat_sys_sync_file_range
301256 common clock_settime sys_clock_settime compat_sys_clock_settime 309256 32 clock_settime sys_clock_settime32
302257 common clock_gettime sys_clock_gettime compat_sys_clock_gettime 310256 64 clock_settime sys_clock_settime
303258 common clock_getres sys_clock_getres compat_sys_clock_getres 311257 32 clock_gettime sys_clock_gettime32
304259 common clock_nanosleep sys_clock_nanosleep compat_sys_clock_nanosleep 312257 64 clock_gettime sys_clock_gettime
313258 32 clock_getres sys_clock_getres_time32
314258 64 clock_getres sys_clock_getres
315259 32 clock_nanosleep sys_clock_nanosleep_time32
316259 64 clock_nanosleep sys_clock_nanosleep
305260 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity 317260 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity
306261 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity 318261 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity
307262 common timer_settime sys_timer_settime compat_sys_timer_settime 319262 32 timer_settime sys_timer_settime32
308263 common timer_gettime sys_timer_gettime compat_sys_timer_gettime 320262 64 timer_settime sys_timer_settime
321263 32 timer_gettime sys_timer_gettime32
322263 64 timer_gettime sys_timer_gettime
309264 common timer_getoverrun sys_timer_getoverrun 323264 common timer_getoverrun sys_timer_getoverrun
310265 common timer_delete sys_timer_delete 324265 common timer_delete sys_timer_delete
311266 common timer_create sys_timer_create compat_sys_timer_create 325266 common timer_create sys_timer_create compat_sys_timer_create
@@ -315,11 +329,14 @@
315269 common io_destroy sys_io_destroy 329269 common io_destroy sys_io_destroy
316270 common io_submit sys_io_submit compat_sys_io_submit 330270 common io_submit sys_io_submit compat_sys_io_submit
317271 common io_cancel sys_io_cancel 331271 common io_cancel sys_io_cancel
318272 common io_getevents sys_io_getevents compat_sys_io_getevents 332272 32 io_getevents sys_io_getevents_time32
333272 64 io_getevents sys_io_getevents
319273 common mq_open sys_mq_open compat_sys_mq_open 334273 common mq_open sys_mq_open compat_sys_mq_open
320274 common mq_unlink sys_mq_unlink 335274 common mq_unlink sys_mq_unlink
321275 common mq_timedsend sys_mq_timedsend compat_sys_mq_timedsend 336275 32 mq_timedsend sys_mq_timedsend_time32
322276 common mq_timedreceive sys_mq_timedreceive compat_sys_mq_timedreceive 337275 64 mq_timedsend sys_mq_timedsend
338276 32 mq_timedreceive sys_mq_timedreceive_time32
339276 64 mq_timedreceive sys_mq_timedreceive
323277 common mq_notify sys_mq_notify compat_sys_mq_notify 340277 common mq_notify sys_mq_notify compat_sys_mq_notify
324278 common mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr 341278 common mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr
325279 common waitid sys_waitid compat_sys_waitid 342279 common waitid sys_waitid compat_sys_waitid
@@ -331,7 +348,8 @@
331285 common mkdirat sys_mkdirat 348285 common mkdirat sys_mkdirat
332286 common mknodat sys_mknodat 349286 common mknodat sys_mknodat
333287 common fchownat sys_fchownat 350287 common fchownat sys_fchownat
334288 common futimesat sys_futimesat compat_sys_futimesat 351288 32 futimesat sys_futimesat_time32
352288 64 futimesat sys_futimesat
335289 common fstatat64 sys_fstatat64 compat_sys_fstatat64 353289 common fstatat64 sys_fstatat64 compat_sys_fstatat64
336290 common unlinkat sys_unlinkat 354290 common unlinkat sys_unlinkat
337291 common renameat sys_renameat 355291 common renameat sys_renameat
@@ -340,8 +358,10 @@
340294 common readlinkat sys_readlinkat 358294 common readlinkat sys_readlinkat
341295 common fchmodat sys_fchmodat 359295 common fchmodat sys_fchmodat
342296 common faccessat sys_faccessat 360296 common faccessat sys_faccessat
343297 common pselect6 sys_pselect6 compat_sys_pselect6 361297 32 pselect6 sys_pselect6_time32 compat_sys_pselect6_time32
344298 common ppoll sys_ppoll compat_sys_ppoll 362297 64 pselect6 sys_pselect6
363298 32 ppoll sys_ppoll_time32 compat_sys_ppoll_time32
364298 64 ppoll sys_ppoll
345299 common unshare sys_unshare 365299 common unshare sys_unshare
346300 common set_robust_list sys_set_robust_list compat_sys_set_robust_list 366300 common set_robust_list sys_set_robust_list compat_sys_set_robust_list
347301 common get_robust_list sys_get_robust_list compat_sys_get_robust_list 367301 common get_robust_list sys_get_robust_list compat_sys_get_robust_list
@@ -353,13 +373,16 @@
353307 common move_pages sys_move_pages compat_sys_move_pages 373307 common move_pages sys_move_pages compat_sys_move_pages
354308 common getcpu sys_getcpu 374308 common getcpu sys_getcpu
355309 common epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait 375309 common epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait
356310 common utimensat sys_utimensat compat_sys_utimensat 376310 32 utimensat sys_utimensat_time32
377310 64 utimensat sys_utimensat
357311 common signalfd sys_signalfd compat_sys_signalfd 378311 common signalfd sys_signalfd compat_sys_signalfd
358312 common timerfd_create sys_timerfd_create 379312 common timerfd_create sys_timerfd_create
359313 common eventfd sys_eventfd 380313 common eventfd sys_eventfd
360314 common fallocate sys_fallocate compat_sys_fallocate 381314 common fallocate sys_fallocate compat_sys_fallocate
361315 common timerfd_settime sys_timerfd_settime compat_sys_timerfd_settime 382315 32 timerfd_settime sys_timerfd_settime32
362316 common timerfd_gettime sys_timerfd_gettime compat_sys_timerfd_gettime 383315 64 timerfd_settime sys_timerfd_settime
384316 32 timerfd_gettime sys_timerfd_gettime32
385316 64 timerfd_gettime sys_timerfd_gettime
363317 common signalfd4 sys_signalfd4 compat_sys_signalfd4 386317 common signalfd4 sys_signalfd4 compat_sys_signalfd4
364318 common eventfd2 sys_eventfd2 387318 common eventfd2 sys_eventfd2
365319 common epoll_create1 sys_epoll_create1 388319 common epoll_create1 sys_epoll_create1
@@ -371,13 +394,15 @@
371325 common pwritev sys_pwritev compat_sys_pwritev 394325 common pwritev sys_pwritev compat_sys_pwritev
372326 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo 395326 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo
373327 common perf_event_open sys_perf_event_open 396327 common perf_event_open sys_perf_event_open
374328 common recvmmsg sys_recvmmsg compat_sys_recvmmsg 397328 32 recvmmsg sys_recvmmsg_time32 compat_sys_recvmmsg_time32
398328 64 recvmmsg sys_recvmmsg
375329 common fanotify_init sys_fanotify_init 399329 common fanotify_init sys_fanotify_init
376330 common fanotify_mark sys_fanotify_mark compat_sys_fanotify_mark 400330 common fanotify_mark sys_fanotify_mark compat_sys_fanotify_mark
377331 common prlimit64 sys_prlimit64 401331 common prlimit64 sys_prlimit64
378332 common name_to_handle_at sys_name_to_handle_at 402332 common name_to_handle_at sys_name_to_handle_at
379333 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at 403333 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at
380334 common clock_adjtime sys_clock_adjtime compat_sys_clock_adjtime 404334 32 clock_adjtime sys_clock_adjtime32
405334 64 clock_adjtime sys_sparc_clock_adjtime
381335 common syncfs sys_syncfs 406335 common syncfs sys_syncfs
382336 common sendmmsg sys_sendmmsg compat_sys_sendmmsg 407336 common sendmmsg sys_sendmmsg compat_sys_sendmmsg
383337 common setns sys_setns 408337 common setns sys_setns
@@ -406,7 +431,8 @@
406358 common preadv2 sys_preadv2 compat_sys_preadv2 431358 common preadv2 sys_preadv2 compat_sys_preadv2
407359 common pwritev2 sys_pwritev2 compat_sys_pwritev2 432359 common pwritev2 sys_pwritev2 compat_sys_pwritev2
408360 common statx sys_statx 433360 common statx sys_statx
409361 common io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents 434361 32 io_pgetevents sys_io_pgetevents_time32 compat_sys_io_pgetevents
435361 64 io_pgetevents sys_io_pgetevents
410362 common pkey_mprotect sys_pkey_mprotect 436362 common pkey_mprotect sys_pkey_mprotect
411363 common pkey_alloc sys_pkey_alloc 437363 common pkey_alloc sys_pkey_alloc
412364 common pkey_free sys_pkey_free 438364 common pkey_free sys_pkey_free
@@ -423,3 +449,23 @@
423400 common msgsnd sys_msgsnd compat_sys_msgsnd 449400 common msgsnd sys_msgsnd compat_sys_msgsnd
424401 common msgrcv sys_msgrcv compat_sys_msgrcv 450401 common msgrcv sys_msgrcv compat_sys_msgrcv
425402 common msgctl sys_msgctl compat_sys_msgctl 451402 common msgctl sys_msgctl compat_sys_msgctl
452403 32 clock_gettime64 sys_clock_gettime sys_clock_gettime
453404 32 clock_settime64 sys_clock_settime sys_clock_settime
454405 32 clock_adjtime64 sys_clock_adjtime sys_clock_adjtime
455406 32 clock_getres_time64 sys_clock_getres sys_clock_getres
456407 32 clock_nanosleep_time64 sys_clock_nanosleep sys_clock_nanosleep
457408 32 timer_gettime64 sys_timer_gettime sys_timer_gettime
458409 32 timer_settime64 sys_timer_settime sys_timer_settime
459410 32 timerfd_gettime64 sys_timerfd_gettime sys_timerfd_gettime
460411 32 timerfd_settime64 sys_timerfd_settime sys_timerfd_settime
461412 32 utimensat_time64 sys_utimensat sys_utimensat
462413 32 pselect6_time64 sys_pselect6 compat_sys_pselect6_time64
463414 32 ppoll_time64 sys_ppoll compat_sys_ppoll_time64
464416 32 io_pgetevents_time64 sys_io_pgetevents sys_io_pgetevents
465417 32 recvmmsg_time64 sys_recvmmsg compat_sys_recvmmsg_time64
466418 32 mq_timedsend_time64 sys_mq_timedsend sys_mq_timedsend
467419 32 mq_timedreceive_time64 sys_mq_timedreceive sys_mq_timedreceive
468420 32 semtimedop_time64 sys_semtimedop sys_semtimedop
469421 32 rt_sigtimedwait_time64 sys_rt_sigtimedwait compat_sys_rt_sigtimedwait_time64
470422 32 futex_time64 sys_futex sys_futex
471423 32 sched_rr_get_interval_time64 sys_sched_rr_get_interval sys_sched_rr_get_interval
diff --git a/arch/x86/entry/syscalls/syscall_32.tbl b/arch/x86/entry/syscalls/syscall_32.tbl
index 2be1d0eb7754..955ab6a3b61f 100644
--- a/arch/x86/entry/syscalls/syscall_32.tbl
+++ b/arch/x86/entry/syscalls/syscall_32.tbl
@@ -24,7 +24,7 @@
2410 i386 unlink sys_unlink __ia32_sys_unlink 2410 i386 unlink sys_unlink __ia32_sys_unlink
2511 i386 execve sys_execve __ia32_compat_sys_execve 2511 i386 execve sys_execve __ia32_compat_sys_execve
2612 i386 chdir sys_chdir __ia32_sys_chdir 2612 i386 chdir sys_chdir __ia32_sys_chdir
2713 i386 time sys_time __ia32_compat_sys_time 2713 i386 time sys_time32 __ia32_sys_time32
2814 i386 mknod sys_mknod __ia32_sys_mknod 2814 i386 mknod sys_mknod __ia32_sys_mknod
2915 i386 chmod sys_chmod __ia32_sys_chmod 2915 i386 chmod sys_chmod __ia32_sys_chmod
3016 i386 lchown sys_lchown16 __ia32_sys_lchown16 3016 i386 lchown sys_lchown16 __ia32_sys_lchown16
@@ -36,12 +36,12 @@
3622 i386 umount sys_oldumount __ia32_sys_oldumount 3622 i386 umount sys_oldumount __ia32_sys_oldumount
3723 i386 setuid sys_setuid16 __ia32_sys_setuid16 3723 i386 setuid sys_setuid16 __ia32_sys_setuid16
3824 i386 getuid sys_getuid16 __ia32_sys_getuid16 3824 i386 getuid sys_getuid16 __ia32_sys_getuid16
3925 i386 stime sys_stime __ia32_compat_sys_stime 3925 i386 stime sys_stime32 __ia32_sys_stime32
4026 i386 ptrace sys_ptrace __ia32_compat_sys_ptrace 4026 i386 ptrace sys_ptrace __ia32_compat_sys_ptrace
4127 i386 alarm sys_alarm __ia32_sys_alarm 4127 i386 alarm sys_alarm __ia32_sys_alarm
4228 i386 oldfstat sys_fstat __ia32_sys_fstat 4228 i386 oldfstat sys_fstat __ia32_sys_fstat
4329 i386 pause sys_pause __ia32_sys_pause 4329 i386 pause sys_pause __ia32_sys_pause
4430 i386 utime sys_utime __ia32_compat_sys_utime 4430 i386 utime sys_utime32 __ia32_sys_utime32
4531 i386 stty 4531 i386 stty
4632 i386 gtty 4632 i386 gtty
4733 i386 access sys_access __ia32_sys_access 4733 i386 access sys_access __ia32_sys_access
@@ -135,7 +135,7 @@
135121 i386 setdomainname sys_setdomainname __ia32_sys_setdomainname 135121 i386 setdomainname sys_setdomainname __ia32_sys_setdomainname
136122 i386 uname sys_newuname __ia32_sys_newuname 136122 i386 uname sys_newuname __ia32_sys_newuname
137123 i386 modify_ldt sys_modify_ldt __ia32_sys_modify_ldt 137123 i386 modify_ldt sys_modify_ldt __ia32_sys_modify_ldt
138124 i386 adjtimex sys_adjtimex __ia32_compat_sys_adjtimex 138124 i386 adjtimex sys_adjtimex_time32 __ia32_sys_adjtimex_time32
139125 i386 mprotect sys_mprotect __ia32_sys_mprotect 139125 i386 mprotect sys_mprotect __ia32_sys_mprotect
140126 i386 sigprocmask sys_sigprocmask __ia32_compat_sys_sigprocmask 140126 i386 sigprocmask sys_sigprocmask __ia32_compat_sys_sigprocmask
141127 i386 create_module 141127 i386 create_module
@@ -172,8 +172,8 @@
172158 i386 sched_yield sys_sched_yield __ia32_sys_sched_yield 172158 i386 sched_yield sys_sched_yield __ia32_sys_sched_yield
173159 i386 sched_get_priority_max sys_sched_get_priority_max __ia32_sys_sched_get_priority_max 173159 i386 sched_get_priority_max sys_sched_get_priority_max __ia32_sys_sched_get_priority_max
174160 i386 sched_get_priority_min sys_sched_get_priority_min __ia32_sys_sched_get_priority_min 174160 i386 sched_get_priority_min sys_sched_get_priority_min __ia32_sys_sched_get_priority_min
175161 i386 sched_rr_get_interval sys_sched_rr_get_interval __ia32_compat_sys_sched_rr_get_interval 175161 i386 sched_rr_get_interval sys_sched_rr_get_interval_time32 __ia32_sys_sched_rr_get_interval_time32
176162 i386 nanosleep sys_nanosleep __ia32_compat_sys_nanosleep 176162 i386 nanosleep sys_nanosleep_time32 __ia32_sys_nanosleep_time32
177163 i386 mremap sys_mremap __ia32_sys_mremap 177163 i386 mremap sys_mremap __ia32_sys_mremap
178164 i386 setresuid sys_setresuid16 __ia32_sys_setresuid16 178164 i386 setresuid sys_setresuid16 __ia32_sys_setresuid16
179165 i386 getresuid sys_getresuid16 __ia32_sys_getresuid16 179165 i386 getresuid sys_getresuid16 __ia32_sys_getresuid16
@@ -188,7 +188,7 @@
188174 i386 rt_sigaction sys_rt_sigaction __ia32_compat_sys_rt_sigaction 188174 i386 rt_sigaction sys_rt_sigaction __ia32_compat_sys_rt_sigaction
189175 i386 rt_sigprocmask sys_rt_sigprocmask __ia32_sys_rt_sigprocmask 189175 i386 rt_sigprocmask sys_rt_sigprocmask __ia32_sys_rt_sigprocmask
190176 i386 rt_sigpending sys_rt_sigpending __ia32_compat_sys_rt_sigpending 190176 i386 rt_sigpending sys_rt_sigpending __ia32_compat_sys_rt_sigpending
191177 i386 rt_sigtimedwait sys_rt_sigtimedwait __ia32_compat_sys_rt_sigtimedwait 191177 i386 rt_sigtimedwait sys_rt_sigtimedwait_time32 __ia32_compat_sys_rt_sigtimedwait_time32
192178 i386 rt_sigqueueinfo sys_rt_sigqueueinfo __ia32_compat_sys_rt_sigqueueinfo 192178 i386 rt_sigqueueinfo sys_rt_sigqueueinfo __ia32_compat_sys_rt_sigqueueinfo
193179 i386 rt_sigsuspend sys_rt_sigsuspend __ia32_sys_rt_sigsuspend 193179 i386 rt_sigsuspend sys_rt_sigsuspend __ia32_sys_rt_sigsuspend
194180 i386 pread64 sys_pread64 __ia32_compat_sys_x86_pread 194180 i386 pread64 sys_pread64 __ia32_compat_sys_x86_pread
@@ -251,14 +251,14 @@
251237 i386 fremovexattr sys_fremovexattr __ia32_sys_fremovexattr 251237 i386 fremovexattr sys_fremovexattr __ia32_sys_fremovexattr
252238 i386 tkill sys_tkill __ia32_sys_tkill 252238 i386 tkill sys_tkill __ia32_sys_tkill
253239 i386 sendfile64 sys_sendfile64 __ia32_sys_sendfile64 253239 i386 sendfile64 sys_sendfile64 __ia32_sys_sendfile64
254240 i386 futex sys_futex __ia32_compat_sys_futex 254240 i386 futex sys_futex_time32 __ia32_sys_futex_time32
255241 i386 sched_setaffinity sys_sched_setaffinity __ia32_compat_sys_sched_setaffinity 255241 i386 sched_setaffinity sys_sched_setaffinity __ia32_compat_sys_sched_setaffinity
256242 i386 sched_getaffinity sys_sched_getaffinity __ia32_compat_sys_sched_getaffinity 256242 i386 sched_getaffinity sys_sched_getaffinity __ia32_compat_sys_sched_getaffinity
257243 i386 set_thread_area sys_set_thread_area __ia32_sys_set_thread_area 257243 i386 set_thread_area sys_set_thread_area __ia32_sys_set_thread_area
258244 i386 get_thread_area sys_get_thread_area __ia32_sys_get_thread_area 258244 i386 get_thread_area sys_get_thread_area __ia32_sys_get_thread_area
259245 i386 io_setup sys_io_setup __ia32_compat_sys_io_setup 259245 i386 io_setup sys_io_setup __ia32_compat_sys_io_setup
260246 i386 io_destroy sys_io_destroy __ia32_sys_io_destroy 260246 i386 io_destroy sys_io_destroy __ia32_sys_io_destroy
261247 i386 io_getevents sys_io_getevents __ia32_compat_sys_io_getevents 261247 i386 io_getevents sys_io_getevents_time32 __ia32_sys_io_getevents_time32
262248 i386 io_submit sys_io_submit __ia32_compat_sys_io_submit 262248 i386 io_submit sys_io_submit __ia32_compat_sys_io_submit
263249 i386 io_cancel sys_io_cancel __ia32_sys_io_cancel 263249 i386 io_cancel sys_io_cancel __ia32_sys_io_cancel
264250 i386 fadvise64 sys_fadvise64 __ia32_compat_sys_x86_fadvise64 264250 i386 fadvise64 sys_fadvise64 __ia32_compat_sys_x86_fadvise64
@@ -271,18 +271,18 @@
271257 i386 remap_file_pages sys_remap_file_pages __ia32_sys_remap_file_pages 271257 i386 remap_file_pages sys_remap_file_pages __ia32_sys_remap_file_pages
272258 i386 set_tid_address sys_set_tid_address __ia32_sys_set_tid_address 272258 i386 set_tid_address sys_set_tid_address __ia32_sys_set_tid_address
273259 i386 timer_create sys_timer_create __ia32_compat_sys_timer_create 273259 i386 timer_create sys_timer_create __ia32_compat_sys_timer_create
274260 i386 timer_settime sys_timer_settime __ia32_compat_sys_timer_settime 274260 i386 timer_settime sys_timer_settime32 __ia32_sys_timer_settime32
275261 i386 timer_gettime sys_timer_gettime __ia32_compat_sys_timer_gettime 275261 i386 timer_gettime sys_timer_gettime32 __ia32_sys_timer_gettime32
276262 i386 timer_getoverrun sys_timer_getoverrun __ia32_sys_timer_getoverrun 276262 i386 timer_getoverrun sys_timer_getoverrun __ia32_sys_timer_getoverrun
277263 i386 timer_delete sys_timer_delete __ia32_sys_timer_delete 277263 i386 timer_delete sys_timer_delete __ia32_sys_timer_delete
278264 i386 clock_settime sys_clock_settime __ia32_compat_sys_clock_settime 278264 i386 clock_settime sys_clock_settime32 __ia32_sys_clock_settime32
279265 i386 clock_gettime sys_clock_gettime __ia32_compat_sys_clock_gettime 279265 i386 clock_gettime sys_clock_gettime32 __ia32_sys_clock_gettime32
280266 i386 clock_getres sys_clock_getres __ia32_compat_sys_clock_getres 280266 i386 clock_getres sys_clock_getres_time32 __ia32_sys_clock_getres_time32
281267 i386 clock_nanosleep sys_clock_nanosleep __ia32_compat_sys_clock_nanosleep 281267 i386 clock_nanosleep sys_clock_nanosleep_time32 __ia32_sys_clock_nanosleep_time32
282268 i386 statfs64 sys_statfs64 __ia32_compat_sys_statfs64 282268 i386 statfs64 sys_statfs64 __ia32_compat_sys_statfs64
283269 i386 fstatfs64 sys_fstatfs64 __ia32_compat_sys_fstatfs64 283269 i386 fstatfs64 sys_fstatfs64 __ia32_compat_sys_fstatfs64
284270 i386 tgkill sys_tgkill __ia32_sys_tgkill 284270 i386 tgkill sys_tgkill __ia32_sys_tgkill
285271 i386 utimes sys_utimes __ia32_compat_sys_utimes 285271 i386 utimes sys_utimes_time32 __ia32_sys_utimes_time32
286272 i386 fadvise64_64 sys_fadvise64_64 __ia32_compat_sys_x86_fadvise64_64 286272 i386 fadvise64_64 sys_fadvise64_64 __ia32_compat_sys_x86_fadvise64_64
287273 i386 vserver 287273 i386 vserver
288274 i386 mbind sys_mbind __ia32_sys_mbind 288274 i386 mbind sys_mbind __ia32_sys_mbind
@@ -290,8 +290,8 @@
290276 i386 set_mempolicy sys_set_mempolicy __ia32_sys_set_mempolicy 290276 i386 set_mempolicy sys_set_mempolicy __ia32_sys_set_mempolicy
291277 i386 mq_open sys_mq_open __ia32_compat_sys_mq_open 291277 i386 mq_open sys_mq_open __ia32_compat_sys_mq_open
292278 i386 mq_unlink sys_mq_unlink __ia32_sys_mq_unlink 292278 i386 mq_unlink sys_mq_unlink __ia32_sys_mq_unlink
293279 i386 mq_timedsend sys_mq_timedsend __ia32_compat_sys_mq_timedsend 293279 i386 mq_timedsend sys_mq_timedsend_time32 __ia32_sys_mq_timedsend_time32
294280 i386 mq_timedreceive sys_mq_timedreceive __ia32_compat_sys_mq_timedreceive 294280 i386 mq_timedreceive sys_mq_timedreceive_time32 __ia32_sys_mq_timedreceive_time32
295281 i386 mq_notify sys_mq_notify __ia32_compat_sys_mq_notify 295281 i386 mq_notify sys_mq_notify __ia32_compat_sys_mq_notify
296282 i386 mq_getsetattr sys_mq_getsetattr __ia32_compat_sys_mq_getsetattr 296282 i386 mq_getsetattr sys_mq_getsetattr __ia32_compat_sys_mq_getsetattr
297283 i386 kexec_load sys_kexec_load __ia32_compat_sys_kexec_load 297283 i386 kexec_load sys_kexec_load __ia32_compat_sys_kexec_load
@@ -310,7 +310,7 @@
310296 i386 mkdirat sys_mkdirat __ia32_sys_mkdirat 310296 i386 mkdirat sys_mkdirat __ia32_sys_mkdirat
311297 i386 mknodat sys_mknodat __ia32_sys_mknodat 311297 i386 mknodat sys_mknodat __ia32_sys_mknodat
312298 i386 fchownat sys_fchownat __ia32_sys_fchownat 312298 i386 fchownat sys_fchownat __ia32_sys_fchownat
313299 i386 futimesat sys_futimesat __ia32_compat_sys_futimesat 313299 i386 futimesat sys_futimesat_time32 __ia32_sys_futimesat_time32
314300 i386 fstatat64 sys_fstatat64 __ia32_compat_sys_x86_fstatat 314300 i386 fstatat64 sys_fstatat64 __ia32_compat_sys_x86_fstatat
315301 i386 unlinkat sys_unlinkat __ia32_sys_unlinkat 315301 i386 unlinkat sys_unlinkat __ia32_sys_unlinkat
316302 i386 renameat sys_renameat __ia32_sys_renameat 316302 i386 renameat sys_renameat __ia32_sys_renameat
@@ -319,8 +319,8 @@
319305 i386 readlinkat sys_readlinkat __ia32_sys_readlinkat 319305 i386 readlinkat sys_readlinkat __ia32_sys_readlinkat
320306 i386 fchmodat sys_fchmodat __ia32_sys_fchmodat 320306 i386 fchmodat sys_fchmodat __ia32_sys_fchmodat
321307 i386 faccessat sys_faccessat __ia32_sys_faccessat 321307 i386 faccessat sys_faccessat __ia32_sys_faccessat
322308 i386 pselect6 sys_pselect6 __ia32_compat_sys_pselect6 322308 i386 pselect6 sys_pselect6_time32 __ia32_compat_sys_pselect6_time32
323309 i386 ppoll sys_ppoll __ia32_compat_sys_ppoll 323309 i386 ppoll sys_ppoll_time32 __ia32_compat_sys_ppoll_time32
324310 i386 unshare sys_unshare __ia32_sys_unshare 324310 i386 unshare sys_unshare __ia32_sys_unshare
325311 i386 set_robust_list sys_set_robust_list __ia32_compat_sys_set_robust_list 325311 i386 set_robust_list sys_set_robust_list __ia32_compat_sys_set_robust_list
326312 i386 get_robust_list sys_get_robust_list __ia32_compat_sys_get_robust_list 326312 i386 get_robust_list sys_get_robust_list __ia32_compat_sys_get_robust_list
@@ -331,13 +331,13 @@
331317 i386 move_pages sys_move_pages __ia32_compat_sys_move_pages 331317 i386 move_pages sys_move_pages __ia32_compat_sys_move_pages
332318 i386 getcpu sys_getcpu __ia32_sys_getcpu 332318 i386 getcpu sys_getcpu __ia32_sys_getcpu
333319 i386 epoll_pwait sys_epoll_pwait __ia32_sys_epoll_pwait 333319 i386 epoll_pwait sys_epoll_pwait __ia32_sys_epoll_pwait
334320 i386 utimensat sys_utimensat __ia32_compat_sys_utimensat 334320 i386 utimensat sys_utimensat_time32 __ia32_sys_utimensat_time32
335321 i386 signalfd sys_signalfd __ia32_compat_sys_signalfd 335321 i386 signalfd sys_signalfd __ia32_compat_sys_signalfd
336322 i386 timerfd_create sys_timerfd_create __ia32_sys_timerfd_create 336322 i386 timerfd_create sys_timerfd_create __ia32_sys_timerfd_create
337323 i386 eventfd sys_eventfd __ia32_sys_eventfd 337323 i386 eventfd sys_eventfd __ia32_sys_eventfd
338324 i386 fallocate sys_fallocate __ia32_compat_sys_x86_fallocate 338324 i386 fallocate sys_fallocate __ia32_compat_sys_x86_fallocate
339325 i386 timerfd_settime sys_timerfd_settime __ia32_compat_sys_timerfd_settime 339325 i386 timerfd_settime sys_timerfd_settime32 __ia32_sys_timerfd_settime32
340326 i386 timerfd_gettime sys_timerfd_gettime __ia32_compat_sys_timerfd_gettime 340326 i386 timerfd_gettime sys_timerfd_gettime32 __ia32_sys_timerfd_gettime32
341327 i386 signalfd4 sys_signalfd4 __ia32_compat_sys_signalfd4 341327 i386 signalfd4 sys_signalfd4 __ia32_compat_sys_signalfd4
342328 i386 eventfd2 sys_eventfd2 __ia32_sys_eventfd2 342328 i386 eventfd2 sys_eventfd2 __ia32_sys_eventfd2
343329 i386 epoll_create1 sys_epoll_create1 __ia32_sys_epoll_create1 343329 i386 epoll_create1 sys_epoll_create1 __ia32_sys_epoll_create1
@@ -348,13 +348,13 @@
348334 i386 pwritev sys_pwritev __ia32_compat_sys_pwritev 348334 i386 pwritev sys_pwritev __ia32_compat_sys_pwritev
349335 i386 rt_tgsigqueueinfo sys_rt_tgsigqueueinfo __ia32_compat_sys_rt_tgsigqueueinfo 349335 i386 rt_tgsigqueueinfo sys_rt_tgsigqueueinfo __ia32_compat_sys_rt_tgsigqueueinfo
350336 i386 perf_event_open sys_perf_event_open __ia32_sys_perf_event_open 350336 i386 perf_event_open sys_perf_event_open __ia32_sys_perf_event_open
351337 i386 recvmmsg sys_recvmmsg __ia32_compat_sys_recvmmsg 351337 i386 recvmmsg sys_recvmmsg_time32 __ia32_compat_sys_recvmmsg_time32
352338 i386 fanotify_init sys_fanotify_init __ia32_sys_fanotify_init 352338 i386 fanotify_init sys_fanotify_init __ia32_sys_fanotify_init
353339 i386 fanotify_mark sys_fanotify_mark __ia32_compat_sys_fanotify_mark 353339 i386 fanotify_mark sys_fanotify_mark __ia32_compat_sys_fanotify_mark
354340 i386 prlimit64 sys_prlimit64 __ia32_sys_prlimit64 354340 i386 prlimit64 sys_prlimit64 __ia32_sys_prlimit64
355341 i386 name_to_handle_at sys_name_to_handle_at __ia32_sys_name_to_handle_at 355341 i386 name_to_handle_at sys_name_to_handle_at __ia32_sys_name_to_handle_at
356342 i386 open_by_handle_at sys_open_by_handle_at __ia32_compat_sys_open_by_handle_at 356342 i386 open_by_handle_at sys_open_by_handle_at __ia32_compat_sys_open_by_handle_at
357343 i386 clock_adjtime sys_clock_adjtime __ia32_compat_sys_clock_adjtime 357343 i386 clock_adjtime sys_clock_adjtime32 __ia32_sys_clock_adjtime32
358344 i386 syncfs sys_syncfs __ia32_sys_syncfs 358344 i386 syncfs sys_syncfs __ia32_sys_syncfs
359345 i386 sendmmsg sys_sendmmsg __ia32_compat_sys_sendmmsg 359345 i386 sendmmsg sys_sendmmsg __ia32_compat_sys_sendmmsg
360346 i386 setns sys_setns __ia32_sys_setns 360346 i386 setns sys_setns __ia32_sys_setns
@@ -396,7 +396,7 @@
396382 i386 pkey_free sys_pkey_free __ia32_sys_pkey_free 396382 i386 pkey_free sys_pkey_free __ia32_sys_pkey_free
397383 i386 statx sys_statx __ia32_sys_statx 397383 i386 statx sys_statx __ia32_sys_statx
398384 i386 arch_prctl sys_arch_prctl __ia32_compat_sys_arch_prctl 398384 i386 arch_prctl sys_arch_prctl __ia32_compat_sys_arch_prctl
399385 i386 io_pgetevents sys_io_pgetevents __ia32_compat_sys_io_pgetevents 399385 i386 io_pgetevents sys_io_pgetevents_time32 __ia32_compat_sys_io_pgetevents
400386 i386 rseq sys_rseq __ia32_sys_rseq 400386 i386 rseq sys_rseq __ia32_sys_rseq
401# don't use numbers 387 through 392, add new calls at the end 401# don't use numbers 387 through 392, add new calls at the end
402393 i386 semget sys_semget __ia32_sys_semget 402393 i386 semget sys_semget __ia32_sys_semget
@@ -409,3 +409,23 @@
409400 i386 msgsnd sys_msgsnd __ia32_compat_sys_msgsnd 409400 i386 msgsnd sys_msgsnd __ia32_compat_sys_msgsnd
410401 i386 msgrcv sys_msgrcv __ia32_compat_sys_msgrcv 410401 i386 msgrcv sys_msgrcv __ia32_compat_sys_msgrcv
411402 i386 msgctl sys_msgctl __ia32_compat_sys_msgctl 411402 i386 msgctl sys_msgctl __ia32_compat_sys_msgctl
412403 i386 clock_gettime64 sys_clock_gettime __ia32_sys_clock_gettime
413404 i386 clock_settime64 sys_clock_settime __ia32_sys_clock_settime
414405 i386 clock_adjtime64 sys_clock_adjtime __ia32_sys_clock_adjtime
415406 i386 clock_getres_time64 sys_clock_getres __ia32_sys_clock_getres
416407 i386 clock_nanosleep_time64 sys_clock_nanosleep __ia32_sys_clock_nanosleep
417408 i386 timer_gettime64 sys_timer_gettime __ia32_sys_timer_gettime
418409 i386 timer_settime64 sys_timer_settime __ia32_sys_timer_settime
419410 i386 timerfd_gettime64 sys_timerfd_gettime __ia32_sys_timerfd_gettime
420411 i386 timerfd_settime64 sys_timerfd_settime __ia32_sys_timerfd_settime
421412 i386 utimensat_time64 sys_utimensat __ia32_sys_utimensat
422413 i386 pselect6_time64 sys_pselect6 __ia32_compat_sys_pselect6_time64
423414 i386 ppoll_time64 sys_ppoll __ia32_compat_sys_ppoll_time64
424416 i386 io_pgetevents_time64 sys_io_pgetevents __ia32_sys_io_pgetevents
425417 i386 recvmmsg_time64 sys_recvmmsg __ia32_compat_sys_recvmmsg_time64
426418 i386 mq_timedsend_time64 sys_mq_timedsend __ia32_sys_mq_timedsend
427419 i386 mq_timedreceive_time64 sys_mq_timedreceive __ia32_sys_mq_timedreceive
428420 i386 semtimedop_time64 sys_semtimedop __ia32_sys_semtimedop
429421 i386 rt_sigtimedwait_time64 sys_rt_sigtimedwait __ia32_compat_sys_rt_sigtimedwait_time64
430422 i386 futex_time64 sys_futex __ia32_sys_futex
431423 i386 sched_rr_get_interval_time64 sys_sched_rr_get_interval __ia32_sys_sched_rr_get_interval
diff --git a/arch/x86/entry/syscalls/syscall_64.tbl b/arch/x86/entry/syscalls/syscall_64.tbl
index 9d8128ef50a9..2ae92fddb6d5 100644
--- a/arch/x86/entry/syscalls/syscall_64.tbl
+++ b/arch/x86/entry/syscalls/syscall_64.tbl
@@ -363,7 +363,7 @@
363520 x32 execve __x32_compat_sys_execve/ptregs 363520 x32 execve __x32_compat_sys_execve/ptregs
364521 x32 ptrace __x32_compat_sys_ptrace 364521 x32 ptrace __x32_compat_sys_ptrace
365522 x32 rt_sigpending __x32_compat_sys_rt_sigpending 365522 x32 rt_sigpending __x32_compat_sys_rt_sigpending
366523 x32 rt_sigtimedwait __x32_compat_sys_rt_sigtimedwait 366523 x32 rt_sigtimedwait __x32_compat_sys_rt_sigtimedwait_time64
367524 x32 rt_sigqueueinfo __x32_compat_sys_rt_sigqueueinfo 367524 x32 rt_sigqueueinfo __x32_compat_sys_rt_sigqueueinfo
368525 x32 sigaltstack __x32_compat_sys_sigaltstack 368525 x32 sigaltstack __x32_compat_sys_sigaltstack
369526 x32 timer_create __x32_compat_sys_timer_create 369526 x32 timer_create __x32_compat_sys_timer_create
@@ -377,7 +377,7 @@
377534 x32 preadv __x32_compat_sys_preadv64 377534 x32 preadv __x32_compat_sys_preadv64
378535 x32 pwritev __x32_compat_sys_pwritev64 378535 x32 pwritev __x32_compat_sys_pwritev64
379536 x32 rt_tgsigqueueinfo __x32_compat_sys_rt_tgsigqueueinfo 379536 x32 rt_tgsigqueueinfo __x32_compat_sys_rt_tgsigqueueinfo
380537 x32 recvmmsg __x32_compat_sys_recvmmsg 380537 x32 recvmmsg __x32_compat_sys_recvmmsg_time64
381538 x32 sendmmsg __x32_compat_sys_sendmmsg 381538 x32 sendmmsg __x32_compat_sys_sendmmsg
382539 x32 process_vm_readv __x32_compat_sys_process_vm_readv 382539 x32 process_vm_readv __x32_compat_sys_process_vm_readv
383540 x32 process_vm_writev __x32_compat_sys_process_vm_writev 383540 x32 process_vm_writev __x32_compat_sys_process_vm_writev
diff --git a/arch/x86/include/asm/unistd.h b/arch/x86/include/asm/unistd.h
index dc4ed8bc2382..146859efd83c 100644
--- a/arch/x86/include/asm/unistd.h
+++ b/arch/x86/include/asm/unistd.h
@@ -23,8 +23,8 @@
23 23
24# include <asm/unistd_64.h> 24# include <asm/unistd_64.h>
25# include <asm/unistd_64_x32.h> 25# include <asm/unistd_64_x32.h>
26# define __ARCH_WANT_COMPAT_SYS_TIME 26# define __ARCH_WANT_SYS_TIME
27# define __ARCH_WANT_SYS_UTIME32 27# define __ARCH_WANT_SYS_UTIME
28# define __ARCH_WANT_COMPAT_SYS_PREADV64 28# define __ARCH_WANT_COMPAT_SYS_PREADV64
29# define __ARCH_WANT_COMPAT_SYS_PWRITEV64 29# define __ARCH_WANT_COMPAT_SYS_PWRITEV64
30# define __ARCH_WANT_COMPAT_SYS_PREADV64V2 30# define __ARCH_WANT_COMPAT_SYS_PREADV64V2
@@ -48,8 +48,8 @@
48# define __ARCH_WANT_SYS_SIGPENDING 48# define __ARCH_WANT_SYS_SIGPENDING
49# define __ARCH_WANT_SYS_SIGPROCMASK 49# define __ARCH_WANT_SYS_SIGPROCMASK
50# define __ARCH_WANT_SYS_SOCKETCALL 50# define __ARCH_WANT_SYS_SOCKETCALL
51# define __ARCH_WANT_SYS_TIME 51# define __ARCH_WANT_SYS_TIME32
52# define __ARCH_WANT_SYS_UTIME 52# define __ARCH_WANT_SYS_UTIME32
53# define __ARCH_WANT_SYS_WAITPID 53# define __ARCH_WANT_SYS_WAITPID
54# define __ARCH_WANT_SYS_FORK 54# define __ARCH_WANT_SYS_FORK
55# define __ARCH_WANT_SYS_VFORK 55# define __ARCH_WANT_SYS_VFORK
diff --git a/arch/xtensa/include/asm/unistd.h b/arch/xtensa/include/asm/unistd.h
index 81cc52ea1bd5..30af4dc3ce7b 100644
--- a/arch/xtensa/include/asm/unistd.h
+++ b/arch/xtensa/include/asm/unistd.h
@@ -7,7 +7,7 @@
7 7
8#define __ARCH_WANT_NEW_STAT 8#define __ARCH_WANT_NEW_STAT
9#define __ARCH_WANT_STAT64 9#define __ARCH_WANT_STAT64
10#define __ARCH_WANT_SYS_UTIME 10#define __ARCH_WANT_SYS_UTIME32
11#define __ARCH_WANT_SYS_GETPGRP 11#define __ARCH_WANT_SYS_GETPGRP
12 12
13#define NR_syscalls __NR_syscalls 13#define NR_syscalls __NR_syscalls
diff --git a/arch/xtensa/kernel/syscalls/syscall.tbl b/arch/xtensa/kernel/syscalls/syscall.tbl
index c699e014e0dd..6af49929de85 100644
--- a/arch/xtensa/kernel/syscalls/syscall.tbl
+++ b/arch/xtensa/kernel/syscalls/syscall.tbl
@@ -72,8 +72,8 @@
7261 common fcntl64 sys_fcntl64 7261 common fcntl64 sys_fcntl64
7362 common fallocate sys_fallocate 7362 common fallocate sys_fallocate
7463 common fadvise64_64 xtensa_fadvise64_64 7463 common fadvise64_64 xtensa_fadvise64_64
7564 common utime sys_utime 7564 common utime sys_utime32
7665 common utimes sys_utimes 7665 common utimes sys_utimes_time32
7766 common ioctl sys_ioctl 7766 common ioctl sys_ioctl
7867 common fcntl sys_fcntl 7867 common fcntl sys_fcntl
7968 common setxattr sys_setxattr 7968 common setxattr sys_setxattr
@@ -174,7 +174,7 @@
174158 common capget sys_capget 174158 common capget sys_capget
175159 common capset sys_capset 175159 common capset sys_capset
176160 common ptrace sys_ptrace 176160 common ptrace sys_ptrace
177161 common semtimedop sys_semtimedop 177161 common semtimedop sys_semtimedop_time32
178162 common semget sys_semget 178162 common semget sys_semget
179163 common semop sys_semop 179163 common semop sys_semop
180164 common semctl sys_old_semctl 180164 common semctl sys_old_semctl
@@ -206,11 +206,11 @@
206188 common setrlimit sys_setrlimit 206188 common setrlimit sys_setrlimit
207189 common getrlimit sys_getrlimit 207189 common getrlimit sys_getrlimit
208190 common getrusage sys_getrusage 208190 common getrusage sys_getrusage
209191 common futex sys_futex 209191 common futex sys_futex_time32
210192 common gettimeofday sys_gettimeofday 210192 common gettimeofday sys_gettimeofday
211193 common settimeofday sys_settimeofday 211193 common settimeofday sys_settimeofday
212194 common adjtimex sys_adjtimex 212194 common adjtimex sys_adjtimex_time32
213195 common nanosleep sys_nanosleep 213195 common nanosleep sys_nanosleep_time32
214196 common getgroups sys_getgroups 214196 common getgroups sys_getgroups
215197 common setgroups sys_setgroups 215197 common setgroups sys_setgroups
216198 common sethostname sys_sethostname 216198 common sethostname sys_sethostname
@@ -234,7 +234,7 @@
234215 common sched_getscheduler sys_sched_getscheduler 234215 common sched_getscheduler sys_sched_getscheduler
235216 common sched_get_priority_max sys_sched_get_priority_max 235216 common sched_get_priority_max sys_sched_get_priority_max
236217 common sched_get_priority_min sys_sched_get_priority_min 236217 common sched_get_priority_min sys_sched_get_priority_min
237218 common sched_rr_get_interval sys_sched_rr_get_interval 237218 common sched_rr_get_interval sys_sched_rr_get_interval_time32
238219 common sched_yield sys_sched_yield 238219 common sched_yield sys_sched_yield
239222 common available222 sys_ni_syscall 239222 common available222 sys_ni_syscall
240# Signal Handling 240# Signal Handling
@@ -244,14 +244,14 @@
244226 common rt_sigaction sys_rt_sigaction 244226 common rt_sigaction sys_rt_sigaction
245227 common rt_sigprocmask sys_rt_sigprocmask 245227 common rt_sigprocmask sys_rt_sigprocmask
246228 common rt_sigpending sys_rt_sigpending 246228 common rt_sigpending sys_rt_sigpending
247229 common rt_sigtimedwait sys_rt_sigtimedwait 247229 common rt_sigtimedwait sys_rt_sigtimedwait_time32
248230 common rt_sigqueueinfo sys_rt_sigqueueinfo 248230 common rt_sigqueueinfo sys_rt_sigqueueinfo
249231 common rt_sigsuspend sys_rt_sigsuspend 249231 common rt_sigsuspend sys_rt_sigsuspend
250# Message 250# Message
251232 common mq_open sys_mq_open 251232 common mq_open sys_mq_open
252233 common mq_unlink sys_mq_unlink 252233 common mq_unlink sys_mq_unlink
253234 common mq_timedsend sys_mq_timedsend 253234 common mq_timedsend sys_mq_timedsend_time32
254235 common mq_timedreceive sys_mq_timedreceive 254235 common mq_timedreceive sys_mq_timedreceive_time32
255236 common mq_notify sys_mq_notify 255236 common mq_notify sys_mq_notify
256237 common mq_getsetattr sys_mq_getsetattr 256237 common mq_getsetattr sys_mq_getsetattr
257238 common available238 sys_ni_syscall 257238 common available238 sys_ni_syscall
@@ -259,17 +259,17 @@
259# IO 259# IO
260240 common io_destroy sys_io_destroy 260240 common io_destroy sys_io_destroy
261241 common io_submit sys_io_submit 261241 common io_submit sys_io_submit
262242 common io_getevents sys_io_getevents 262242 common io_getevents sys_io_getevents_time32
263243 common io_cancel sys_io_cancel 263243 common io_cancel sys_io_cancel
264244 common clock_settime sys_clock_settime 264244 common clock_settime sys_clock_settime32
265245 common clock_gettime sys_clock_gettime 265245 common clock_gettime sys_clock_gettime32
266246 common clock_getres sys_clock_getres 266246 common clock_getres sys_clock_getres_time32
267247 common clock_nanosleep sys_clock_nanosleep 267247 common clock_nanosleep sys_clock_nanosleep_time32
268# Timer 268# Timer
269248 common timer_create sys_timer_create 269248 common timer_create sys_timer_create
270249 common timer_delete sys_timer_delete 270249 common timer_delete sys_timer_delete
271250 common timer_settime sys_timer_settime 271250 common timer_settime sys_timer_settime32
272251 common timer_gettime sys_timer_gettime 272251 common timer_gettime sys_timer_gettime32
273252 common timer_getoverrun sys_timer_getoverrun 273252 common timer_getoverrun sys_timer_getoverrun
274# System 274# System
275253 common reserved253 sys_ni_syscall 275253 common reserved253 sys_ni_syscall
@@ -291,8 +291,8 @@
291269 common tee sys_tee 291269 common tee sys_tee
292270 common vmsplice sys_vmsplice 292270 common vmsplice sys_vmsplice
293271 common available271 sys_ni_syscall 293271 common available271 sys_ni_syscall
294272 common pselect6 sys_pselect6 294272 common pselect6 sys_pselect6_time32
295273 common ppoll sys_ppoll 295273 common ppoll sys_ppoll_time32
296274 common epoll_pwait sys_epoll_pwait 296274 common epoll_pwait sys_epoll_pwait
297275 common epoll_create1 sys_epoll_create1 297275 common epoll_create1 sys_epoll_create1
298276 common inotify_init sys_inotify_init 298276 common inotify_init sys_inotify_init
@@ -316,9 +316,9 @@
316293 common linkat sys_linkat 316293 common linkat sys_linkat
317294 common symlinkat sys_symlinkat 317294 common symlinkat sys_symlinkat
318295 common readlinkat sys_readlinkat 318295 common readlinkat sys_readlinkat
319296 common utimensat sys_utimensat 319296 common utimensat sys_utimensat_time32
320297 common fchownat sys_fchownat 320297 common fchownat sys_fchownat
321298 common futimesat sys_futimesat 321298 common futimesat sys_futimesat_time32
322299 common fstatat64 sys_fstatat64 322299 common fstatat64 sys_fstatat64
323300 common fchmodat sys_fchmodat 323300 common fchmodat sys_fchmodat
324301 common faccessat sys_faccessat 324301 common faccessat sys_faccessat
@@ -327,14 +327,14 @@
327304 common signalfd sys_signalfd 327304 common signalfd sys_signalfd
328# 305 was timerfd 328# 305 was timerfd
329306 common eventfd sys_eventfd 329306 common eventfd sys_eventfd
330307 common recvmmsg sys_recvmmsg 330307 common recvmmsg sys_recvmmsg_time32
331308 common setns sys_setns 331308 common setns sys_setns
332309 common signalfd4 sys_signalfd4 332309 common signalfd4 sys_signalfd4
333310 common dup3 sys_dup3 333310 common dup3 sys_dup3
334311 common pipe2 sys_pipe2 334311 common pipe2 sys_pipe2
335312 common timerfd_create sys_timerfd_create 335312 common timerfd_create sys_timerfd_create
336313 common timerfd_settime sys_timerfd_settime 336313 common timerfd_settime sys_timerfd_settime32
337314 common timerfd_gettime sys_timerfd_gettime 337314 common timerfd_gettime sys_timerfd_gettime32
338315 common available315 sys_ni_syscall 338315 common available315 sys_ni_syscall
339316 common eventfd2 sys_eventfd2 339316 common eventfd2 sys_eventfd2
340317 common preadv sys_preadv 340317 common preadv sys_preadv
@@ -349,7 +349,7 @@
349326 common sync_file_range2 sys_sync_file_range2 349326 common sync_file_range2 sys_sync_file_range2
350327 common perf_event_open sys_perf_event_open 350327 common perf_event_open sys_perf_event_open
351328 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo 351328 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo
352329 common clock_adjtime sys_clock_adjtime 352329 common clock_adjtime sys_clock_adjtime32
353330 common prlimit64 sys_prlimit64 353330 common prlimit64 sys_prlimit64
354331 common kcmp sys_kcmp 354331 common kcmp sys_kcmp
355332 common finit_module sys_finit_module 355332 common finit_module sys_finit_module
@@ -373,3 +373,24 @@
373350 common pkey_free sys_pkey_free 373350 common pkey_free sys_pkey_free
374351 common statx sys_statx 374351 common statx sys_statx
375352 common rseq sys_rseq 375352 common rseq sys_rseq
376# 353 through 402 are unassigned to sync up with generic numbers
377403 common clock_gettime64 sys_clock_gettime
378404 common clock_settime64 sys_clock_settime
379405 common clock_adjtime64 sys_clock_adjtime
380406 common clock_getres_time64 sys_clock_getres
381407 common clock_nanosleep_time64 sys_clock_nanosleep
382408 common timer_gettime64 sys_timer_gettime
383409 common timer_settime64 sys_timer_settime
384410 common timerfd_gettime64 sys_timerfd_gettime
385411 common timerfd_settime64 sys_timerfd_settime
386412 common utimensat_time64 sys_utimensat
387413 common pselect6_time64 sys_pselect6
388414 common ppoll_time64 sys_ppoll
389416 common io_pgetevents_time64 sys_io_pgetevents
390417 common recvmmsg_time64 sys_recvmmsg
391418 common mq_timedsend_time64 sys_mq_timedsend
392419 common mq_timedreceive_time64 sys_mq_timedreceive
393420 common semtimedop_time64 sys_semtimedop
394421 common rt_sigtimedwait_time64 sys_rt_sigtimedwait
395422 common futex_time64 sys_futex
396423 common sched_rr_get_interval_time64 sys_sched_rr_get_interval
diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
index 48f3594a7458..79bd102c9bbc 100644
--- a/drivers/ptp/ptp_clock.c
+++ b/drivers/ptp/ptp_clock.c
@@ -124,7 +124,7 @@ static int ptp_clock_gettime(struct posix_clock *pc, struct timespec64 *tp)
124 return err; 124 return err;
125} 125}
126 126
127static int ptp_clock_adjtime(struct posix_clock *pc, struct timex *tx) 127static int ptp_clock_adjtime(struct posix_clock *pc, struct __kernel_timex *tx)
128{ 128{
129 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock); 129 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock);
130 struct ptp_clock_info *ops; 130 struct ptp_clock_info *ops;
diff --git a/fs/aio.c b/fs/aio.c
index b906ff70c90f..4394d3fe116a 100644
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -2198,11 +2198,11 @@ SYSCALL_DEFINE6(io_pgetevents_time32,
2198 2198
2199#if defined(CONFIG_COMPAT_32BIT_TIME) 2199#if defined(CONFIG_COMPAT_32BIT_TIME)
2200 2200
2201COMPAT_SYSCALL_DEFINE5(io_getevents, compat_aio_context_t, ctx_id, 2201SYSCALL_DEFINE5(io_getevents_time32, __u32, ctx_id,
2202 compat_long_t, min_nr, 2202 __s32, min_nr,
2203 compat_long_t, nr, 2203 __s32, nr,
2204 struct io_event __user *, events, 2204 struct io_event __user *, events,
2205 struct old_timespec32 __user *, timeout) 2205 struct old_timespec32 __user *, timeout)
2206{ 2206{
2207 struct timespec64 t; 2207 struct timespec64 t;
2208 int ret; 2208 int ret;
diff --git a/fs/select.c b/fs/select.c
index d0f35dbc0e8f..6cbc9ff56ba0 100644
--- a/fs/select.c
+++ b/fs/select.c
@@ -1379,7 +1379,7 @@ COMPAT_SYSCALL_DEFINE6(pselect6_time64, int, n, compat_ulong_t __user *, inp,
1379 1379
1380#if defined(CONFIG_COMPAT_32BIT_TIME) 1380#if defined(CONFIG_COMPAT_32BIT_TIME)
1381 1381
1382COMPAT_SYSCALL_DEFINE6(pselect6, int, n, compat_ulong_t __user *, inp, 1382COMPAT_SYSCALL_DEFINE6(pselect6_time32, int, n, compat_ulong_t __user *, inp,
1383 compat_ulong_t __user *, outp, compat_ulong_t __user *, exp, 1383 compat_ulong_t __user *, outp, compat_ulong_t __user *, exp,
1384 struct old_timespec32 __user *, tsp, void __user *, sig) 1384 struct old_timespec32 __user *, tsp, void __user *, sig)
1385{ 1385{
@@ -1402,7 +1402,7 @@ COMPAT_SYSCALL_DEFINE6(pselect6, int, n, compat_ulong_t __user *, inp,
1402#endif 1402#endif
1403 1403
1404#if defined(CONFIG_COMPAT_32BIT_TIME) 1404#if defined(CONFIG_COMPAT_32BIT_TIME)
1405COMPAT_SYSCALL_DEFINE5(ppoll, struct pollfd __user *, ufds, 1405COMPAT_SYSCALL_DEFINE5(ppoll_time32, struct pollfd __user *, ufds,
1406 unsigned int, nfds, struct old_timespec32 __user *, tsp, 1406 unsigned int, nfds, struct old_timespec32 __user *, tsp,
1407 const compat_sigset_t __user *, sigmask, compat_size_t, sigsetsize) 1407 const compat_sigset_t __user *, sigmask, compat_size_t, sigsetsize)
1408{ 1408{
diff --git a/fs/timerfd.c b/fs/timerfd.c
index 803ca070d42e..6a6fc8aa1de7 100644
--- a/fs/timerfd.c
+++ b/fs/timerfd.c
@@ -560,7 +560,7 @@ SYSCALL_DEFINE2(timerfd_gettime, int, ufd, struct __kernel_itimerspec __user *,
560} 560}
561 561
562#ifdef CONFIG_COMPAT_32BIT_TIME 562#ifdef CONFIG_COMPAT_32BIT_TIME
563COMPAT_SYSCALL_DEFINE4(timerfd_settime, int, ufd, int, flags, 563SYSCALL_DEFINE4(timerfd_settime32, int, ufd, int, flags,
564 const struct old_itimerspec32 __user *, utmr, 564 const struct old_itimerspec32 __user *, utmr,
565 struct old_itimerspec32 __user *, otmr) 565 struct old_itimerspec32 __user *, otmr)
566{ 566{
@@ -577,7 +577,7 @@ COMPAT_SYSCALL_DEFINE4(timerfd_settime, int, ufd, int, flags,
577 return ret; 577 return ret;
578} 578}
579 579
580COMPAT_SYSCALL_DEFINE2(timerfd_gettime, int, ufd, 580SYSCALL_DEFINE2(timerfd_gettime32, int, ufd,
581 struct old_itimerspec32 __user *, otmr) 581 struct old_itimerspec32 __user *, otmr)
582{ 582{
583 struct itimerspec64 kotmr; 583 struct itimerspec64 kotmr;
diff --git a/fs/utimes.c b/fs/utimes.c
index bdcf2daf39c1..350c9c16ace1 100644
--- a/fs/utimes.c
+++ b/fs/utimes.c
@@ -224,8 +224,8 @@ SYSCALL_DEFINE2(utime, char __user *, filename, struct utimbuf __user *, times)
224 * of sys_utimes. 224 * of sys_utimes.
225 */ 225 */
226#ifdef __ARCH_WANT_SYS_UTIME32 226#ifdef __ARCH_WANT_SYS_UTIME32
227COMPAT_SYSCALL_DEFINE2(utime, const char __user *, filename, 227SYSCALL_DEFINE2(utime32, const char __user *, filename,
228 struct old_utimbuf32 __user *, t) 228 struct old_utimbuf32 __user *, t)
229{ 229{
230 struct timespec64 tv[2]; 230 struct timespec64 tv[2];
231 231
@@ -240,7 +240,7 @@ COMPAT_SYSCALL_DEFINE2(utime, const char __user *, filename,
240} 240}
241#endif 241#endif
242 242
243COMPAT_SYSCALL_DEFINE4(utimensat, unsigned int, dfd, const char __user *, filename, struct old_timespec32 __user *, t, int, flags) 243SYSCALL_DEFINE4(utimensat_time32, unsigned int, dfd, const char __user *, filename, struct old_timespec32 __user *, t, int, flags)
244{ 244{
245 struct timespec64 tv[2]; 245 struct timespec64 tv[2];
246 246
@@ -276,14 +276,14 @@ static long do_compat_futimesat(unsigned int dfd, const char __user *filename,
276 return do_utimes(dfd, filename, t ? tv : NULL, 0); 276 return do_utimes(dfd, filename, t ? tv : NULL, 0);
277} 277}
278 278
279COMPAT_SYSCALL_DEFINE3(futimesat, unsigned int, dfd, 279SYSCALL_DEFINE3(futimesat_time32, unsigned int, dfd,
280 const char __user *, filename, 280 const char __user *, filename,
281 struct old_timeval32 __user *, t) 281 struct old_timeval32 __user *, t)
282{ 282{
283 return do_compat_futimesat(dfd, filename, t); 283 return do_compat_futimesat(dfd, filename, t);
284} 284}
285 285
286COMPAT_SYSCALL_DEFINE2(utimes, const char __user *, filename, struct old_timeval32 __user *, t) 286SYSCALL_DEFINE2(utimes_time32, const char __user *, filename, struct old_timeval32 __user *, t)
287{ 287{
288 return do_compat_futimesat(AT_FDCWD, filename, t); 288 return do_compat_futimesat(AT_FDCWD, filename, t);
289} 289}
diff --git a/include/linux/compat.h b/include/linux/compat.h
index 056be0d03722..ebddcb6cfcf8 100644
--- a/include/linux/compat.h
+++ b/include/linux/compat.h
@@ -132,37 +132,6 @@ struct compat_tms {
132 compat_clock_t tms_cstime; 132 compat_clock_t tms_cstime;
133}; 133};
134 134
135struct compat_timex {
136 compat_uint_t modes;
137 compat_long_t offset;
138 compat_long_t freq;
139 compat_long_t maxerror;
140 compat_long_t esterror;
141 compat_int_t status;
142 compat_long_t constant;
143 compat_long_t precision;
144 compat_long_t tolerance;
145 struct old_timeval32 time;
146 compat_long_t tick;
147 compat_long_t ppsfreq;
148 compat_long_t jitter;
149 compat_int_t shift;
150 compat_long_t stabil;
151 compat_long_t jitcnt;
152 compat_long_t calcnt;
153 compat_long_t errcnt;
154 compat_long_t stbcnt;
155 compat_int_t tai;
156
157 compat_int_t:32; compat_int_t:32; compat_int_t:32; compat_int_t:32;
158 compat_int_t:32; compat_int_t:32; compat_int_t:32; compat_int_t:32;
159 compat_int_t:32; compat_int_t:32; compat_int_t:32;
160};
161
162struct timex;
163int compat_get_timex(struct timex *, const struct compat_timex __user *);
164int compat_put_timex(struct compat_timex __user *, const struct timex *);
165
166#define _COMPAT_NSIG_WORDS (_COMPAT_NSIG / _COMPAT_NSIG_BPW) 135#define _COMPAT_NSIG_WORDS (_COMPAT_NSIG / _COMPAT_NSIG_BPW)
167 136
168typedef struct { 137typedef struct {
@@ -551,11 +520,6 @@ int __compat_save_altstack(compat_stack_t __user *, unsigned long);
551asmlinkage long compat_sys_io_setup(unsigned nr_reqs, u32 __user *ctx32p); 520asmlinkage long compat_sys_io_setup(unsigned nr_reqs, u32 __user *ctx32p);
552asmlinkage long compat_sys_io_submit(compat_aio_context_t ctx_id, int nr, 521asmlinkage long compat_sys_io_submit(compat_aio_context_t ctx_id, int nr,
553 u32 __user *iocb); 522 u32 __user *iocb);
554asmlinkage long compat_sys_io_getevents(compat_aio_context_t ctx_id,
555 compat_long_t min_nr,
556 compat_long_t nr,
557 struct io_event __user *events,
558 struct old_timespec32 __user *timeout);
559asmlinkage long compat_sys_io_pgetevents(compat_aio_context_t ctx_id, 523asmlinkage long compat_sys_io_pgetevents(compat_aio_context_t ctx_id,
560 compat_long_t min_nr, 524 compat_long_t min_nr,
561 compat_long_t nr, 525 compat_long_t nr,
@@ -648,7 +612,7 @@ asmlinkage long compat_sys_sendfile64(int out_fd, int in_fd,
648 compat_loff_t __user *offset, compat_size_t count); 612 compat_loff_t __user *offset, compat_size_t count);
649 613
650/* fs/select.c */ 614/* fs/select.c */
651asmlinkage long compat_sys_pselect6(int n, compat_ulong_t __user *inp, 615asmlinkage long compat_sys_pselect6_time32(int n, compat_ulong_t __user *inp,
652 compat_ulong_t __user *outp, 616 compat_ulong_t __user *outp,
653 compat_ulong_t __user *exp, 617 compat_ulong_t __user *exp,
654 struct old_timespec32 __user *tsp, 618 struct old_timespec32 __user *tsp,
@@ -658,7 +622,7 @@ asmlinkage long compat_sys_pselect6_time64(int n, compat_ulong_t __user *inp,
658 compat_ulong_t __user *exp, 622 compat_ulong_t __user *exp,
659 struct __kernel_timespec __user *tsp, 623 struct __kernel_timespec __user *tsp,
660 void __user *sig); 624 void __user *sig);
661asmlinkage long compat_sys_ppoll(struct pollfd __user *ufds, 625asmlinkage long compat_sys_ppoll_time32(struct pollfd __user *ufds,
662 unsigned int nfds, 626 unsigned int nfds,
663 struct old_timespec32 __user *tsp, 627 struct old_timespec32 __user *tsp,
664 const compat_sigset_t __user *sigmask, 628 const compat_sigset_t __user *sigmask,
@@ -688,19 +652,6 @@ asmlinkage long compat_sys_newfstat(unsigned int fd,
688 652
689/* fs/sync.c: No generic prototype for sync_file_range and sync_file_range2 */ 653/* fs/sync.c: No generic prototype for sync_file_range and sync_file_range2 */
690 654
691/* fs/timerfd.c */
692asmlinkage long compat_sys_timerfd_gettime(int ufd,
693 struct old_itimerspec32 __user *otmr);
694asmlinkage long compat_sys_timerfd_settime(int ufd, int flags,
695 const struct old_itimerspec32 __user *utmr,
696 struct old_itimerspec32 __user *otmr);
697
698/* fs/utimes.c */
699asmlinkage long compat_sys_utimensat(unsigned int dfd,
700 const char __user *filename,
701 struct old_timespec32 __user *t,
702 int flags);
703
704/* kernel/exit.c */ 655/* kernel/exit.c */
705asmlinkage long compat_sys_waitid(int, compat_pid_t, 656asmlinkage long compat_sys_waitid(int, compat_pid_t,
706 struct compat_siginfo __user *, int, 657 struct compat_siginfo __user *, int,
@@ -709,9 +660,6 @@ asmlinkage long compat_sys_waitid(int, compat_pid_t,
709 660
710 661
711/* kernel/futex.c */ 662/* kernel/futex.c */
712asmlinkage long compat_sys_futex(u32 __user *uaddr, int op, u32 val,
713 struct old_timespec32 __user *utime, u32 __user *uaddr2,
714 u32 val3);
715asmlinkage long 663asmlinkage long
716compat_sys_set_robust_list(struct compat_robust_list_head __user *head, 664compat_sys_set_robust_list(struct compat_robust_list_head __user *head,
717 compat_size_t len); 665 compat_size_t len);
@@ -719,10 +667,6 @@ asmlinkage long
719compat_sys_get_robust_list(int pid, compat_uptr_t __user *head_ptr, 667compat_sys_get_robust_list(int pid, compat_uptr_t __user *head_ptr,
720 compat_size_t __user *len_ptr); 668 compat_size_t __user *len_ptr);
721 669
722/* kernel/hrtimer.c */
723asmlinkage long compat_sys_nanosleep(struct old_timespec32 __user *rqtp,
724 struct old_timespec32 __user *rmtp);
725
726/* kernel/itimer.c */ 670/* kernel/itimer.c */
727asmlinkage long compat_sys_getitimer(int which, 671asmlinkage long compat_sys_getitimer(int which,
728 struct compat_itimerval __user *it); 672 struct compat_itimerval __user *it);
@@ -740,20 +684,6 @@ asmlinkage long compat_sys_kexec_load(compat_ulong_t entry,
740asmlinkage long compat_sys_timer_create(clockid_t which_clock, 684asmlinkage long compat_sys_timer_create(clockid_t which_clock,
741 struct compat_sigevent __user *timer_event_spec, 685 struct compat_sigevent __user *timer_event_spec,
742 timer_t __user *created_timer_id); 686 timer_t __user *created_timer_id);
743asmlinkage long compat_sys_timer_gettime(timer_t timer_id,
744 struct old_itimerspec32 __user *setting);
745asmlinkage long compat_sys_timer_settime(timer_t timer_id, int flags,
746 struct old_itimerspec32 __user *new,
747 struct old_itimerspec32 __user *old);
748asmlinkage long compat_sys_clock_settime(clockid_t which_clock,
749 struct old_timespec32 __user *tp);
750asmlinkage long compat_sys_clock_gettime(clockid_t which_clock,
751 struct old_timespec32 __user *tp);
752asmlinkage long compat_sys_clock_getres(clockid_t which_clock,
753 struct old_timespec32 __user *tp);
754asmlinkage long compat_sys_clock_nanosleep(clockid_t which_clock, int flags,
755 struct old_timespec32 __user *rqtp,
756 struct old_timespec32 __user *rmtp);
757 687
758/* kernel/ptrace.c */ 688/* kernel/ptrace.c */
759asmlinkage long compat_sys_ptrace(compat_long_t request, compat_long_t pid, 689asmlinkage long compat_sys_ptrace(compat_long_t request, compat_long_t pid,
@@ -766,8 +696,6 @@ asmlinkage long compat_sys_sched_setaffinity(compat_pid_t pid,
766asmlinkage long compat_sys_sched_getaffinity(compat_pid_t pid, 696asmlinkage long compat_sys_sched_getaffinity(compat_pid_t pid,
767 unsigned int len, 697 unsigned int len,
768 compat_ulong_t __user *user_mask_ptr); 698 compat_ulong_t __user *user_mask_ptr);
769asmlinkage long compat_sys_sched_rr_get_interval(compat_pid_t pid,
770 struct old_timespec32 __user *interval);
771 699
772/* kernel/signal.c */ 700/* kernel/signal.c */
773asmlinkage long compat_sys_sigaltstack(const compat_stack_t __user *uss_ptr, 701asmlinkage long compat_sys_sigaltstack(const compat_stack_t __user *uss_ptr,
@@ -785,7 +713,7 @@ asmlinkage long compat_sys_rt_sigprocmask(int how, compat_sigset_t __user *set,
785 compat_size_t sigsetsize); 713 compat_size_t sigsetsize);
786asmlinkage long compat_sys_rt_sigpending(compat_sigset_t __user *uset, 714asmlinkage long compat_sys_rt_sigpending(compat_sigset_t __user *uset,
787 compat_size_t sigsetsize); 715 compat_size_t sigsetsize);
788asmlinkage long compat_sys_rt_sigtimedwait(compat_sigset_t __user *uthese, 716asmlinkage long compat_sys_rt_sigtimedwait_time32(compat_sigset_t __user *uthese,
789 struct compat_siginfo __user *uinfo, 717 struct compat_siginfo __user *uinfo,
790 struct old_timespec32 __user *uts, compat_size_t sigsetsize); 718 struct old_timespec32 __user *uts, compat_size_t sigsetsize);
791asmlinkage long compat_sys_rt_sigtimedwait_time64(compat_sigset_t __user *uthese, 719asmlinkage long compat_sys_rt_sigtimedwait_time64(compat_sigset_t __user *uthese,
@@ -808,7 +736,6 @@ asmlinkage long compat_sys_gettimeofday(struct old_timeval32 __user *tv,
808 struct timezone __user *tz); 736 struct timezone __user *tz);
809asmlinkage long compat_sys_settimeofday(struct old_timeval32 __user *tv, 737asmlinkage long compat_sys_settimeofday(struct old_timeval32 __user *tv,
810 struct timezone __user *tz); 738 struct timezone __user *tz);
811asmlinkage long compat_sys_adjtimex(struct compat_timex __user *utp);
812 739
813/* kernel/timer.c */ 740/* kernel/timer.c */
814asmlinkage long compat_sys_sysinfo(struct compat_sysinfo __user *info); 741asmlinkage long compat_sys_sysinfo(struct compat_sysinfo __user *info);
@@ -817,14 +744,6 @@ asmlinkage long compat_sys_sysinfo(struct compat_sysinfo __user *info);
817asmlinkage long compat_sys_mq_open(const char __user *u_name, 744asmlinkage long compat_sys_mq_open(const char __user *u_name,
818 int oflag, compat_mode_t mode, 745 int oflag, compat_mode_t mode,
819 struct compat_mq_attr __user *u_attr); 746 struct compat_mq_attr __user *u_attr);
820asmlinkage long compat_sys_mq_timedsend(mqd_t mqdes,
821 const char __user *u_msg_ptr,
822 compat_size_t msg_len, unsigned int msg_prio,
823 const struct old_timespec32 __user *u_abs_timeout);
824asmlinkage ssize_t compat_sys_mq_timedreceive(mqd_t mqdes,
825 char __user *u_msg_ptr,
826 compat_size_t msg_len, unsigned int __user *u_msg_prio,
827 const struct old_timespec32 __user *u_abs_timeout);
828asmlinkage long compat_sys_mq_notify(mqd_t mqdes, 747asmlinkage long compat_sys_mq_notify(mqd_t mqdes,
829 const struct compat_sigevent __user *u_notification); 748 const struct compat_sigevent __user *u_notification);
830asmlinkage long compat_sys_mq_getsetattr(mqd_t mqdes, 749asmlinkage long compat_sys_mq_getsetattr(mqd_t mqdes,
@@ -840,8 +759,6 @@ asmlinkage long compat_sys_msgsnd(int msqid, compat_uptr_t msgp,
840 759
841/* ipc/sem.c */ 760/* ipc/sem.c */
842asmlinkage long compat_sys_semctl(int semid, int semnum, int cmd, int arg); 761asmlinkage long compat_sys_semctl(int semid, int semnum, int cmd, int arg);
843asmlinkage long compat_sys_semtimedop(int semid, struct sembuf __user *tsems,
844 unsigned nsems, const struct old_timespec32 __user *timeout);
845 762
846/* ipc/shm.c */ 763/* ipc/shm.c */
847asmlinkage long compat_sys_shmctl(int first, int second, void __user *uptr); 764asmlinkage long compat_sys_shmctl(int first, int second, void __user *uptr);
@@ -899,7 +816,7 @@ asmlinkage long compat_sys_rt_tgsigqueueinfo(compat_pid_t tgid,
899asmlinkage long compat_sys_recvmmsg_time64(int fd, struct compat_mmsghdr __user *mmsg, 816asmlinkage long compat_sys_recvmmsg_time64(int fd, struct compat_mmsghdr __user *mmsg,
900 unsigned vlen, unsigned int flags, 817 unsigned vlen, unsigned int flags,
901 struct __kernel_timespec __user *timeout); 818 struct __kernel_timespec __user *timeout);
902asmlinkage long compat_sys_recvmmsg(int fd, struct compat_mmsghdr __user *mmsg, 819asmlinkage long compat_sys_recvmmsg_time32(int fd, struct compat_mmsghdr __user *mmsg,
903 unsigned vlen, unsigned int flags, 820 unsigned vlen, unsigned int flags,
904 struct old_timespec32 __user *timeout); 821 struct old_timespec32 __user *timeout);
905asmlinkage long compat_sys_wait4(compat_pid_t pid, 822asmlinkage long compat_sys_wait4(compat_pid_t pid,
@@ -910,8 +827,6 @@ asmlinkage long compat_sys_fanotify_mark(int, unsigned int, __u32, __u32,
910asmlinkage long compat_sys_open_by_handle_at(int mountdirfd, 827asmlinkage long compat_sys_open_by_handle_at(int mountdirfd,
911 struct file_handle __user *handle, 828 struct file_handle __user *handle,
912 int flags); 829 int flags);
913asmlinkage long compat_sys_clock_adjtime(clockid_t which_clock,
914 struct compat_timex __user *tp);
915asmlinkage long compat_sys_sendmmsg(int fd, struct compat_mmsghdr __user *mmsg, 830asmlinkage long compat_sys_sendmmsg(int fd, struct compat_mmsghdr __user *mmsg,
916 unsigned vlen, unsigned int flags); 831 unsigned vlen, unsigned int flags);
917asmlinkage ssize_t compat_sys_process_vm_readv(compat_pid_t pid, 832asmlinkage ssize_t compat_sys_process_vm_readv(compat_pid_t pid,
@@ -952,8 +867,6 @@ asmlinkage long compat_sys_pwritev64v2(unsigned long fd,
952/* __ARCH_WANT_SYSCALL_NO_AT */ 867/* __ARCH_WANT_SYSCALL_NO_AT */
953asmlinkage long compat_sys_open(const char __user *filename, int flags, 868asmlinkage long compat_sys_open(const char __user *filename, int flags,
954 umode_t mode); 869 umode_t mode);
955asmlinkage long compat_sys_utimes(const char __user *filename,
956 struct old_timeval32 __user *t);
957 870
958/* __ARCH_WANT_SYSCALL_NO_FLAGS */ 871/* __ARCH_WANT_SYSCALL_NO_FLAGS */
959asmlinkage long compat_sys_signalfd(int ufd, 872asmlinkage long compat_sys_signalfd(int ufd,
@@ -967,12 +880,6 @@ asmlinkage long compat_sys_newlstat(const char __user *filename,
967 struct compat_stat __user *statbuf); 880 struct compat_stat __user *statbuf);
968 881
969/* __ARCH_WANT_SYSCALL_DEPRECATED */ 882/* __ARCH_WANT_SYSCALL_DEPRECATED */
970asmlinkage long compat_sys_time(old_time32_t __user *tloc);
971asmlinkage long compat_sys_utime(const char __user *filename,
972 struct old_utimbuf32 __user *t);
973asmlinkage long compat_sys_futimesat(unsigned int dfd,
974 const char __user *filename,
975 struct old_timeval32 __user *t);
976asmlinkage long compat_sys_select(int n, compat_ulong_t __user *inp, 883asmlinkage long compat_sys_select(int n, compat_ulong_t __user *inp,
977 compat_ulong_t __user *outp, compat_ulong_t __user *exp, 884 compat_ulong_t __user *outp, compat_ulong_t __user *exp,
978 struct old_timeval32 __user *tvp); 885 struct old_timeval32 __user *tvp);
@@ -1007,9 +914,6 @@ asmlinkage long compat_sys_sigaction(int sig,
1007 struct compat_old_sigaction __user *oact); 914 struct compat_old_sigaction __user *oact);
1008#endif 915#endif
1009 916
1010/* obsolete: kernel/time/time.c */
1011asmlinkage long compat_sys_stime(old_time32_t __user *tptr);
1012
1013/* obsolete: net/socket.c */ 917/* obsolete: net/socket.c */
1014asmlinkage long compat_sys_socketcall(int call, u32 __user *args); 918asmlinkage long compat_sys_socketcall(int call, u32 __user *args);
1015 919
diff --git a/include/linux/posix-clock.h b/include/linux/posix-clock.h
index 3a3bc71017d5..18674d7d5b1c 100644
--- a/include/linux/posix-clock.h
+++ b/include/linux/posix-clock.h
@@ -51,7 +51,7 @@ struct posix_clock;
51struct posix_clock_operations { 51struct posix_clock_operations {
52 struct module *owner; 52 struct module *owner;
53 53
54 int (*clock_adjtime)(struct posix_clock *pc, struct timex *tx); 54 int (*clock_adjtime)(struct posix_clock *pc, struct __kernel_timex *tx);
55 55
56 int (*clock_gettime)(struct posix_clock *pc, struct timespec64 *ts); 56 int (*clock_gettime)(struct posix_clock *pc, struct timespec64 *ts);
57 57
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 938d8908b9e0..94369f5bd8e5 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -54,7 +54,7 @@ struct __sysctl_args;
54struct sysinfo; 54struct sysinfo;
55struct timespec; 55struct timespec;
56struct timeval; 56struct timeval;
57struct timex; 57struct __kernel_timex;
58struct timezone; 58struct timezone;
59struct tms; 59struct tms;
60struct utimbuf; 60struct utimbuf;
@@ -297,6 +297,11 @@ asmlinkage long sys_io_getevents(aio_context_t ctx_id,
297 long nr, 297 long nr,
298 struct io_event __user *events, 298 struct io_event __user *events,
299 struct __kernel_timespec __user *timeout); 299 struct __kernel_timespec __user *timeout);
300asmlinkage long sys_io_getevents_time32(__u32 ctx_id,
301 __s32 min_nr,
302 __s32 nr,
303 struct io_event __user *events,
304 struct old_timespec32 __user *timeout);
300asmlinkage long sys_io_pgetevents(aio_context_t ctx_id, 305asmlinkage long sys_io_pgetevents(aio_context_t ctx_id,
301 long min_nr, 306 long min_nr,
302 long nr, 307 long nr,
@@ -522,11 +527,19 @@ asmlinkage long sys_timerfd_settime(int ufd, int flags,
522 const struct __kernel_itimerspec __user *utmr, 527 const struct __kernel_itimerspec __user *utmr,
523 struct __kernel_itimerspec __user *otmr); 528 struct __kernel_itimerspec __user *otmr);
524asmlinkage long sys_timerfd_gettime(int ufd, struct __kernel_itimerspec __user *otmr); 529asmlinkage long sys_timerfd_gettime(int ufd, struct __kernel_itimerspec __user *otmr);
530asmlinkage long sys_timerfd_gettime32(int ufd,
531 struct old_itimerspec32 __user *otmr);
532asmlinkage long sys_timerfd_settime32(int ufd, int flags,
533 const struct old_itimerspec32 __user *utmr,
534 struct old_itimerspec32 __user *otmr);
525 535
526/* fs/utimes.c */ 536/* fs/utimes.c */
527asmlinkage long sys_utimensat(int dfd, const char __user *filename, 537asmlinkage long sys_utimensat(int dfd, const char __user *filename,
528 struct __kernel_timespec __user *utimes, 538 struct __kernel_timespec __user *utimes,
529 int flags); 539 int flags);
540asmlinkage long sys_utimensat_time32(unsigned int dfd,
541 const char __user *filename,
542 struct old_timespec32 __user *t, int flags);
530 543
531/* kernel/acct.c */ 544/* kernel/acct.c */
532asmlinkage long sys_acct(const char __user *name); 545asmlinkage long sys_acct(const char __user *name);
@@ -555,6 +568,9 @@ asmlinkage long sys_unshare(unsigned long unshare_flags);
555asmlinkage long sys_futex(u32 __user *uaddr, int op, u32 val, 568asmlinkage long sys_futex(u32 __user *uaddr, int op, u32 val,
556 struct __kernel_timespec __user *utime, u32 __user *uaddr2, 569 struct __kernel_timespec __user *utime, u32 __user *uaddr2,
557 u32 val3); 570 u32 val3);
571asmlinkage long sys_futex_time32(u32 __user *uaddr, int op, u32 val,
572 struct old_timespec32 __user *utime, u32 __user *uaddr2,
573 u32 val3);
558asmlinkage long sys_get_robust_list(int pid, 574asmlinkage long sys_get_robust_list(int pid,
559 struct robust_list_head __user * __user *head_ptr, 575 struct robust_list_head __user * __user *head_ptr,
560 size_t __user *len_ptr); 576 size_t __user *len_ptr);
@@ -564,6 +580,8 @@ asmlinkage long sys_set_robust_list(struct robust_list_head __user *head,
564/* kernel/hrtimer.c */ 580/* kernel/hrtimer.c */
565asmlinkage long sys_nanosleep(struct __kernel_timespec __user *rqtp, 581asmlinkage long sys_nanosleep(struct __kernel_timespec __user *rqtp,
566 struct __kernel_timespec __user *rmtp); 582 struct __kernel_timespec __user *rmtp);
583asmlinkage long sys_nanosleep_time32(struct old_timespec32 __user *rqtp,
584 struct old_timespec32 __user *rmtp);
567 585
568/* kernel/itimer.c */ 586/* kernel/itimer.c */
569asmlinkage long sys_getitimer(int which, struct itimerval __user *value); 587asmlinkage long sys_getitimer(int which, struct itimerval __user *value);
@@ -591,7 +609,7 @@ asmlinkage long sys_timer_gettime(timer_t timer_id,
591asmlinkage long sys_timer_getoverrun(timer_t timer_id); 609asmlinkage long sys_timer_getoverrun(timer_t timer_id);
592asmlinkage long sys_timer_settime(timer_t timer_id, int flags, 610asmlinkage long sys_timer_settime(timer_t timer_id, int flags,
593 const struct __kernel_itimerspec __user *new_setting, 611 const struct __kernel_itimerspec __user *new_setting,
594 struct itimerspec __user *old_setting); 612 struct __kernel_itimerspec __user *old_setting);
595asmlinkage long sys_timer_delete(timer_t timer_id); 613asmlinkage long sys_timer_delete(timer_t timer_id);
596asmlinkage long sys_clock_settime(clockid_t which_clock, 614asmlinkage long sys_clock_settime(clockid_t which_clock,
597 const struct __kernel_timespec __user *tp); 615 const struct __kernel_timespec __user *tp);
@@ -602,6 +620,20 @@ asmlinkage long sys_clock_getres(clockid_t which_clock,
602asmlinkage long sys_clock_nanosleep(clockid_t which_clock, int flags, 620asmlinkage long sys_clock_nanosleep(clockid_t which_clock, int flags,
603 const struct __kernel_timespec __user *rqtp, 621 const struct __kernel_timespec __user *rqtp,
604 struct __kernel_timespec __user *rmtp); 622 struct __kernel_timespec __user *rmtp);
623asmlinkage long sys_timer_gettime32(timer_t timer_id,
624 struct old_itimerspec32 __user *setting);
625asmlinkage long sys_timer_settime32(timer_t timer_id, int flags,
626 struct old_itimerspec32 __user *new,
627 struct old_itimerspec32 __user *old);
628asmlinkage long sys_clock_settime32(clockid_t which_clock,
629 struct old_timespec32 __user *tp);
630asmlinkage long sys_clock_gettime32(clockid_t which_clock,
631 struct old_timespec32 __user *tp);
632asmlinkage long sys_clock_getres_time32(clockid_t which_clock,
633 struct old_timespec32 __user *tp);
634asmlinkage long sys_clock_nanosleep_time32(clockid_t which_clock, int flags,
635 struct old_timespec32 __user *rqtp,
636 struct old_timespec32 __user *rmtp);
605 637
606/* kernel/printk.c */ 638/* kernel/printk.c */
607asmlinkage long sys_syslog(int type, char __user *buf, int len); 639asmlinkage long sys_syslog(int type, char __user *buf, int len);
@@ -627,6 +659,8 @@ asmlinkage long sys_sched_get_priority_max(int policy);
627asmlinkage long sys_sched_get_priority_min(int policy); 659asmlinkage long sys_sched_get_priority_min(int policy);
628asmlinkage long sys_sched_rr_get_interval(pid_t pid, 660asmlinkage long sys_sched_rr_get_interval(pid_t pid,
629 struct __kernel_timespec __user *interval); 661 struct __kernel_timespec __user *interval);
662asmlinkage long sys_sched_rr_get_interval_time32(pid_t pid,
663 struct old_timespec32 __user *interval);
630 664
631/* kernel/signal.c */ 665/* kernel/signal.c */
632asmlinkage long sys_restart_syscall(void); 666asmlinkage long sys_restart_syscall(void);
@@ -695,7 +729,8 @@ asmlinkage long sys_gettimeofday(struct timeval __user *tv,
695 struct timezone __user *tz); 729 struct timezone __user *tz);
696asmlinkage long sys_settimeofday(struct timeval __user *tv, 730asmlinkage long sys_settimeofday(struct timeval __user *tv,
697 struct timezone __user *tz); 731 struct timezone __user *tz);
698asmlinkage long sys_adjtimex(struct timex __user *txc_p); 732asmlinkage long sys_adjtimex(struct __kernel_timex __user *txc_p);
733asmlinkage long sys_adjtimex_time32(struct old_timex32 __user *txc_p);
699 734
700/* kernel/timer.c */ 735/* kernel/timer.c */
701asmlinkage long sys_getpid(void); 736asmlinkage long sys_getpid(void);
@@ -714,6 +749,14 @@ asmlinkage long sys_mq_timedsend(mqd_t mqdes, const char __user *msg_ptr, size_t
714asmlinkage long sys_mq_timedreceive(mqd_t mqdes, char __user *msg_ptr, size_t msg_len, unsigned int __user *msg_prio, const struct __kernel_timespec __user *abs_timeout); 749asmlinkage long sys_mq_timedreceive(mqd_t mqdes, char __user *msg_ptr, size_t msg_len, unsigned int __user *msg_prio, const struct __kernel_timespec __user *abs_timeout);
715asmlinkage long sys_mq_notify(mqd_t mqdes, const struct sigevent __user *notification); 750asmlinkage long sys_mq_notify(mqd_t mqdes, const struct sigevent __user *notification);
716asmlinkage long sys_mq_getsetattr(mqd_t mqdes, const struct mq_attr __user *mqstat, struct mq_attr __user *omqstat); 751asmlinkage long sys_mq_getsetattr(mqd_t mqdes, const struct mq_attr __user *mqstat, struct mq_attr __user *omqstat);
752asmlinkage long sys_mq_timedreceive_time32(mqd_t mqdes,
753 char __user *u_msg_ptr,
754 unsigned int msg_len, unsigned int __user *u_msg_prio,
755 const struct old_timespec32 __user *u_abs_timeout);
756asmlinkage long sys_mq_timedsend_time32(mqd_t mqdes,
757 const char __user *u_msg_ptr,
758 unsigned int msg_len, unsigned int msg_prio,
759 const struct old_timespec32 __user *u_abs_timeout);
717 760
718/* ipc/msg.c */ 761/* ipc/msg.c */
719asmlinkage long sys_msgget(key_t key, int msgflg); 762asmlinkage long sys_msgget(key_t key, int msgflg);
@@ -731,6 +774,9 @@ asmlinkage long sys_old_semctl(int semid, int semnum, int cmd, unsigned long arg
731asmlinkage long sys_semtimedop(int semid, struct sembuf __user *sops, 774asmlinkage long sys_semtimedop(int semid, struct sembuf __user *sops,
732 unsigned nsops, 775 unsigned nsops,
733 const struct __kernel_timespec __user *timeout); 776 const struct __kernel_timespec __user *timeout);
777asmlinkage long sys_semtimedop_time32(int semid, struct sembuf __user *sops,
778 unsigned nsops,
779 const struct old_timespec32 __user *timeout);
734asmlinkage long sys_semop(int semid, struct sembuf __user *sops, 780asmlinkage long sys_semop(int semid, struct sembuf __user *sops,
735 unsigned nsops); 781 unsigned nsops);
736 782
@@ -870,7 +916,9 @@ asmlinkage long sys_open_by_handle_at(int mountdirfd,
870 struct file_handle __user *handle, 916 struct file_handle __user *handle,
871 int flags); 917 int flags);
872asmlinkage long sys_clock_adjtime(clockid_t which_clock, 918asmlinkage long sys_clock_adjtime(clockid_t which_clock,
873 struct timex __user *tx); 919 struct __kernel_timex __user *tx);
920asmlinkage long sys_clock_adjtime32(clockid_t which_clock,
921 struct old_timex32 __user *tx);
874asmlinkage long sys_syncfs(int fd); 922asmlinkage long sys_syncfs(int fd);
875asmlinkage long sys_setns(int fd, int nstype); 923asmlinkage long sys_setns(int fd, int nstype);
876asmlinkage long sys_sendmmsg(int fd, struct mmsghdr __user *msg, 924asmlinkage long sys_sendmmsg(int fd, struct mmsghdr __user *msg,
@@ -1006,6 +1054,7 @@ asmlinkage long sys_alarm(unsigned int seconds);
1006asmlinkage long sys_getpgrp(void); 1054asmlinkage long sys_getpgrp(void);
1007asmlinkage long sys_pause(void); 1055asmlinkage long sys_pause(void);
1008asmlinkage long sys_time(time_t __user *tloc); 1056asmlinkage long sys_time(time_t __user *tloc);
1057asmlinkage long sys_time32(old_time32_t __user *tloc);
1009#ifdef __ARCH_WANT_SYS_UTIME 1058#ifdef __ARCH_WANT_SYS_UTIME
1010asmlinkage long sys_utime(char __user *filename, 1059asmlinkage long sys_utime(char __user *filename,
1011 struct utimbuf __user *times); 1060 struct utimbuf __user *times);
@@ -1014,6 +1063,13 @@ asmlinkage long sys_utimes(char __user *filename,
1014asmlinkage long sys_futimesat(int dfd, const char __user *filename, 1063asmlinkage long sys_futimesat(int dfd, const char __user *filename,
1015 struct timeval __user *utimes); 1064 struct timeval __user *utimes);
1016#endif 1065#endif
1066asmlinkage long sys_futimesat_time32(unsigned int dfd,
1067 const char __user *filename,
1068 struct old_timeval32 __user *t);
1069asmlinkage long sys_utime32(const char __user *filename,
1070 struct old_utimbuf32 __user *t);
1071asmlinkage long sys_utimes_time32(const char __user *filename,
1072 struct old_timeval32 __user *t);
1017asmlinkage long sys_creat(const char __user *pathname, umode_t mode); 1073asmlinkage long sys_creat(const char __user *pathname, umode_t mode);
1018asmlinkage long sys_getdents(unsigned int fd, 1074asmlinkage long sys_getdents(unsigned int fd,
1019 struct linux_dirent __user *dirent, 1075 struct linux_dirent __user *dirent,
@@ -1038,6 +1094,7 @@ asmlinkage long sys_fork(void);
1038 1094
1039/* obsolete: kernel/time/time.c */ 1095/* obsolete: kernel/time/time.c */
1040asmlinkage long sys_stime(time_t __user *tptr); 1096asmlinkage long sys_stime(time_t __user *tptr);
1097asmlinkage long sys_stime32(old_time32_t __user *tptr);
1041 1098
1042/* obsolete: kernel/signal.c */ 1099/* obsolete: kernel/signal.c */
1043asmlinkage long sys_sigpending(old_sigset_t __user *uset); 1100asmlinkage long sys_sigpending(old_sigset_t __user *uset);
diff --git a/include/linux/time32.h b/include/linux/time32.h
index 118b9977080c..0a1f302a1753 100644
--- a/include/linux/time32.h
+++ b/include/linux/time32.h
@@ -10,6 +10,7 @@
10 */ 10 */
11 11
12#include <linux/time64.h> 12#include <linux/time64.h>
13#include <linux/timex.h>
13 14
14#define TIME_T_MAX (time_t)((1UL << ((sizeof(time_t) << 3) - 1)) - 1) 15#define TIME_T_MAX (time_t)((1UL << ((sizeof(time_t) << 3) - 1)) - 1)
15 16
@@ -35,13 +36,42 @@ struct old_utimbuf32 {
35 old_time32_t modtime; 36 old_time32_t modtime;
36}; 37};
37 38
39struct old_timex32 {
40 u32 modes;
41 s32 offset;
42 s32 freq;
43 s32 maxerror;
44 s32 esterror;
45 s32 status;
46 s32 constant;
47 s32 precision;
48 s32 tolerance;
49 struct old_timeval32 time;
50 s32 tick;
51 s32 ppsfreq;
52 s32 jitter;
53 s32 shift;
54 s32 stabil;
55 s32 jitcnt;
56 s32 calcnt;
57 s32 errcnt;
58 s32 stbcnt;
59 s32 tai;
60
61 s32:32; s32:32; s32:32; s32:32;
62 s32:32; s32:32; s32:32; s32:32;
63 s32:32; s32:32; s32:32;
64};
65
38extern int get_old_timespec32(struct timespec64 *, const void __user *); 66extern int get_old_timespec32(struct timespec64 *, const void __user *);
39extern int put_old_timespec32(const struct timespec64 *, void __user *); 67extern int put_old_timespec32(const struct timespec64 *, void __user *);
40extern int get_old_itimerspec32(struct itimerspec64 *its, 68extern int get_old_itimerspec32(struct itimerspec64 *its,
41 const struct old_itimerspec32 __user *uits); 69 const struct old_itimerspec32 __user *uits);
42extern int put_old_itimerspec32(const struct itimerspec64 *its, 70extern int put_old_itimerspec32(const struct itimerspec64 *its,
43 struct old_itimerspec32 __user *uits); 71 struct old_itimerspec32 __user *uits);
44 72struct __kernel_timex;
73int get_old_timex32(struct __kernel_timex *, const struct old_timex32 __user *);
74int put_old_timex32(struct old_timex32 __user *, const struct __kernel_timex *);
45 75
46#if __BITS_PER_LONG == 64 76#if __BITS_PER_LONG == 64
47 77
diff --git a/include/linux/time64.h b/include/linux/time64.h
index 05634afba0db..f38d382ffec1 100644
--- a/include/linux/time64.h
+++ b/include/linux/time64.h
@@ -7,14 +7,6 @@
7typedef __s64 time64_t; 7typedef __s64 time64_t;
8typedef __u64 timeu64_t; 8typedef __u64 timeu64_t;
9 9
10/* CONFIG_64BIT_TIME enables new 64 bit time_t syscalls in the compat path
11 * and 32-bit emulation.
12 */
13#ifndef CONFIG_64BIT_TIME
14#define __kernel_timespec timespec
15#define __kernel_itimerspec itimerspec
16#endif
17
18#include <uapi/linux/time.h> 10#include <uapi/linux/time.h>
19 11
20struct timespec64 { 12struct timespec64 {
diff --git a/include/linux/timex.h b/include/linux/timex.h
index 39c25dbebfe8..ce0859763670 100644
--- a/include/linux/timex.h
+++ b/include/linux/timex.h
@@ -151,7 +151,9 @@ extern unsigned long tick_nsec; /* SHIFTED_HZ period (nsec) */
151#define NTP_INTERVAL_FREQ (HZ) 151#define NTP_INTERVAL_FREQ (HZ)
152#define NTP_INTERVAL_LENGTH (NSEC_PER_SEC/NTP_INTERVAL_FREQ) 152#define NTP_INTERVAL_LENGTH (NSEC_PER_SEC/NTP_INTERVAL_FREQ)
153 153
154extern int do_adjtimex(struct timex *); 154extern int do_adjtimex(struct __kernel_timex *);
155extern int do_clock_adjtime(const clockid_t which_clock, struct __kernel_timex * ktx);
156
155extern void hardpps(const struct timespec64 *, const struct timespec64 *); 157extern void hardpps(const struct timespec64 *, const struct timespec64 *);
156 158
157int read_current_timer(unsigned long *timer_val); 159int read_current_timer(unsigned long *timer_val);
diff --git a/include/uapi/asm-generic/unistd.h b/include/uapi/asm-generic/unistd.h
index 509484dbfd5d..acf9a07ab2ff 100644
--- a/include/uapi/asm-generic/unistd.h
+++ b/include/uapi/asm-generic/unistd.h
@@ -39,7 +39,7 @@ __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#define __NR_io_getevents 4 41#define __NR_io_getevents 4
42__SC_COMP(__NR_io_getevents, sys_io_getevents, compat_sys_io_getevents) 42__SC_3264(__NR_io_getevents, sys_io_getevents_time32, sys_io_getevents)
43 43
44/* fs/xattr.c */ 44/* fs/xattr.c */
45#define __NR_setxattr 5 45#define __NR_setxattr 5
@@ -223,9 +223,9 @@ __SYSCALL(__NR3264_sendfile, sys_sendfile64)
223 223
224/* fs/select.c */ 224/* fs/select.c */
225#define __NR_pselect6 72 225#define __NR_pselect6 72
226__SC_COMP(__NR_pselect6, sys_pselect6, compat_sys_pselect6) 226__SC_COMP_3264(__NR_pselect6, sys_pselect6_time32, sys_pselect6, compat_sys_pselect6_time32)
227#define __NR_ppoll 73 227#define __NR_ppoll 73
228__SC_COMP(__NR_ppoll, sys_ppoll, compat_sys_ppoll) 228__SC_COMP_3264(__NR_ppoll, sys_ppoll_time32, sys_ppoll, compat_sys_ppoll_time32)
229 229
230/* fs/signalfd.c */ 230/* fs/signalfd.c */
231#define __NR_signalfd4 74 231#define __NR_signalfd4 74
@@ -270,15 +270,15 @@ __SC_COMP(__NR_sync_file_range, sys_sync_file_range, \
270#define __NR_timerfd_create 85 270#define __NR_timerfd_create 85
271__SYSCALL(__NR_timerfd_create, sys_timerfd_create) 271__SYSCALL(__NR_timerfd_create, sys_timerfd_create)
272#define __NR_timerfd_settime 86 272#define __NR_timerfd_settime 86
273__SC_COMP(__NR_timerfd_settime, sys_timerfd_settime, \ 273__SC_3264(__NR_timerfd_settime, sys_timerfd_settime32, \
274 compat_sys_timerfd_settime) 274 sys_timerfd_settime)
275#define __NR_timerfd_gettime 87 275#define __NR_timerfd_gettime 87
276__SC_COMP(__NR_timerfd_gettime, sys_timerfd_gettime, \ 276__SC_3264(__NR_timerfd_gettime, sys_timerfd_gettime32, \
277 compat_sys_timerfd_gettime) 277 sys_timerfd_gettime)
278 278
279/* fs/utimes.c */ 279/* fs/utimes.c */
280#define __NR_utimensat 88 280#define __NR_utimensat 88
281__SC_COMP(__NR_utimensat, sys_utimensat, compat_sys_utimensat) 281__SC_3264(__NR_utimensat, sys_utimensat_time32, sys_utimensat)
282 282
283/* kernel/acct.c */ 283/* kernel/acct.c */
284#define __NR_acct 89 284#define __NR_acct 89
@@ -310,7 +310,7 @@ __SYSCALL(__NR_unshare, sys_unshare)
310 310
311/* kernel/futex.c */ 311/* kernel/futex.c */
312#define __NR_futex 98 312#define __NR_futex 98
313__SC_COMP(__NR_futex, sys_futex, compat_sys_futex) 313__SC_3264(__NR_futex, sys_futex_time32, sys_futex)
314#define __NR_set_robust_list 99 314#define __NR_set_robust_list 99
315__SC_COMP(__NR_set_robust_list, sys_set_robust_list, \ 315__SC_COMP(__NR_set_robust_list, sys_set_robust_list, \
316 compat_sys_set_robust_list) 316 compat_sys_set_robust_list)
@@ -320,7 +320,7 @@ __SC_COMP(__NR_get_robust_list, sys_get_robust_list, \
320 320
321/* kernel/hrtimer.c */ 321/* kernel/hrtimer.c */
322#define __NR_nanosleep 101 322#define __NR_nanosleep 101
323__SC_COMP(__NR_nanosleep, sys_nanosleep, compat_sys_nanosleep) 323__SC_3264(__NR_nanosleep, sys_nanosleep_time32, sys_nanosleep)
324 324
325/* kernel/itimer.c */ 325/* kernel/itimer.c */
326#define __NR_getitimer 102 326#define __NR_getitimer 102
@@ -342,22 +342,22 @@ __SYSCALL(__NR_delete_module, sys_delete_module)
342#define __NR_timer_create 107 342#define __NR_timer_create 107
343__SC_COMP(__NR_timer_create, sys_timer_create, compat_sys_timer_create) 343__SC_COMP(__NR_timer_create, sys_timer_create, compat_sys_timer_create)
344#define __NR_timer_gettime 108 344#define __NR_timer_gettime 108
345__SC_COMP(__NR_timer_gettime, sys_timer_gettime, compat_sys_timer_gettime) 345__SC_3264(__NR_timer_gettime, sys_timer_gettime32, sys_timer_gettime)
346#define __NR_timer_getoverrun 109 346#define __NR_timer_getoverrun 109
347__SYSCALL(__NR_timer_getoverrun, sys_timer_getoverrun) 347__SYSCALL(__NR_timer_getoverrun, sys_timer_getoverrun)
348#define __NR_timer_settime 110 348#define __NR_timer_settime 110
349__SC_COMP(__NR_timer_settime, sys_timer_settime, compat_sys_timer_settime) 349__SC_3264(__NR_timer_settime, sys_timer_settime32, sys_timer_settime)
350#define __NR_timer_delete 111 350#define __NR_timer_delete 111
351__SYSCALL(__NR_timer_delete, sys_timer_delete) 351__SYSCALL(__NR_timer_delete, sys_timer_delete)
352#define __NR_clock_settime 112 352#define __NR_clock_settime 112
353__SC_COMP(__NR_clock_settime, sys_clock_settime, compat_sys_clock_settime) 353__SC_3264(__NR_clock_settime, sys_clock_settime32, sys_clock_settime)
354#define __NR_clock_gettime 113 354#define __NR_clock_gettime 113
355__SC_COMP(__NR_clock_gettime, sys_clock_gettime, compat_sys_clock_gettime) 355__SC_3264(__NR_clock_gettime, sys_clock_gettime32, sys_clock_gettime)
356#define __NR_clock_getres 114 356#define __NR_clock_getres 114
357__SC_COMP(__NR_clock_getres, sys_clock_getres, compat_sys_clock_getres) 357__SC_3264(__NR_clock_getres, sys_clock_getres_time32, sys_clock_getres)
358#define __NR_clock_nanosleep 115 358#define __NR_clock_nanosleep 115
359__SC_COMP(__NR_clock_nanosleep, sys_clock_nanosleep, \ 359__SC_3264(__NR_clock_nanosleep, sys_clock_nanosleep_time32, \
360 compat_sys_clock_nanosleep) 360 sys_clock_nanosleep)
361 361
362/* kernel/printk.c */ 362/* kernel/printk.c */
363#define __NR_syslog 116 363#define __NR_syslog 116
@@ -389,8 +389,8 @@ __SYSCALL(__NR_sched_get_priority_max, sys_sched_get_priority_max)
389#define __NR_sched_get_priority_min 126 389#define __NR_sched_get_priority_min 126
390__SYSCALL(__NR_sched_get_priority_min, sys_sched_get_priority_min) 390__SYSCALL(__NR_sched_get_priority_min, sys_sched_get_priority_min)
391#define __NR_sched_rr_get_interval 127 391#define __NR_sched_rr_get_interval 127
392__SC_COMP(__NR_sched_rr_get_interval, sys_sched_rr_get_interval, \ 392__SC_3264(__NR_sched_rr_get_interval, sys_sched_rr_get_interval_time32, \
393 compat_sys_sched_rr_get_interval) 393 sys_sched_rr_get_interval)
394 394
395/* kernel/signal.c */ 395/* kernel/signal.c */
396#define __NR_restart_syscall 128 396#define __NR_restart_syscall 128
@@ -412,8 +412,8 @@ __SC_COMP(__NR_rt_sigprocmask, sys_rt_sigprocmask, compat_sys_rt_sigprocmask)
412#define __NR_rt_sigpending 136 412#define __NR_rt_sigpending 136
413__SC_COMP(__NR_rt_sigpending, sys_rt_sigpending, compat_sys_rt_sigpending) 413__SC_COMP(__NR_rt_sigpending, sys_rt_sigpending, compat_sys_rt_sigpending)
414#define __NR_rt_sigtimedwait 137 414#define __NR_rt_sigtimedwait 137
415__SC_COMP(__NR_rt_sigtimedwait, sys_rt_sigtimedwait, \ 415__SC_COMP_3264(__NR_rt_sigtimedwait, sys_rt_sigtimedwait_time32, \
416 compat_sys_rt_sigtimedwait) 416 sys_rt_sigtimedwait, compat_sys_rt_sigtimedwait_time32)
417#define __NR_rt_sigqueueinfo 138 417#define __NR_rt_sigqueueinfo 138
418__SC_COMP(__NR_rt_sigqueueinfo, sys_rt_sigqueueinfo, \ 418__SC_COMP(__NR_rt_sigqueueinfo, sys_rt_sigqueueinfo, \
419 compat_sys_rt_sigqueueinfo) 419 compat_sys_rt_sigqueueinfo)
@@ -486,7 +486,7 @@ __SC_COMP(__NR_gettimeofday, sys_gettimeofday, compat_sys_gettimeofday)
486#define __NR_settimeofday 170 486#define __NR_settimeofday 170
487__SC_COMP(__NR_settimeofday, sys_settimeofday, compat_sys_settimeofday) 487__SC_COMP(__NR_settimeofday, sys_settimeofday, compat_sys_settimeofday)
488#define __NR_adjtimex 171 488#define __NR_adjtimex 171
489__SC_COMP(__NR_adjtimex, sys_adjtimex, compat_sys_adjtimex) 489__SC_3264(__NR_adjtimex, sys_adjtimex_time32, sys_adjtimex)
490 490
491/* kernel/timer.c */ 491/* kernel/timer.c */
492#define __NR_getpid 172 492#define __NR_getpid 172
@@ -512,10 +512,10 @@ __SC_COMP(__NR_mq_open, sys_mq_open, compat_sys_mq_open)
512#define __NR_mq_unlink 181 512#define __NR_mq_unlink 181
513__SYSCALL(__NR_mq_unlink, sys_mq_unlink) 513__SYSCALL(__NR_mq_unlink, sys_mq_unlink)
514#define __NR_mq_timedsend 182 514#define __NR_mq_timedsend 182
515__SC_COMP(__NR_mq_timedsend, sys_mq_timedsend, compat_sys_mq_timedsend) 515__SC_3264(__NR_mq_timedsend, sys_mq_timedsend_time32, sys_mq_timedsend)
516#define __NR_mq_timedreceive 183 516#define __NR_mq_timedreceive 183
517__SC_COMP(__NR_mq_timedreceive, sys_mq_timedreceive, \ 517__SC_3264(__NR_mq_timedreceive, sys_mq_timedreceive_time32, \
518 compat_sys_mq_timedreceive) 518 sys_mq_timedreceive)
519#define __NR_mq_notify 184 519#define __NR_mq_notify 184
520__SC_COMP(__NR_mq_notify, sys_mq_notify, compat_sys_mq_notify) 520__SC_COMP(__NR_mq_notify, sys_mq_notify, compat_sys_mq_notify)
521#define __NR_mq_getsetattr 185 521#define __NR_mq_getsetattr 185
@@ -537,7 +537,7 @@ __SYSCALL(__NR_semget, sys_semget)
537#define __NR_semctl 191 537#define __NR_semctl 191
538__SC_COMP(__NR_semctl, sys_semctl, compat_sys_semctl) 538__SC_COMP(__NR_semctl, sys_semctl, compat_sys_semctl)
539#define __NR_semtimedop 192 539#define __NR_semtimedop 192
540__SC_COMP(__NR_semtimedop, sys_semtimedop, compat_sys_semtimedop) 540__SC_COMP(__NR_semtimedop, sys_semtimedop, sys_semtimedop_time32)
541#define __NR_semop 193 541#define __NR_semop 193
542__SYSCALL(__NR_semop, sys_semop) 542__SYSCALL(__NR_semop, sys_semop)
543 543
@@ -659,7 +659,7 @@ __SYSCALL(__NR_perf_event_open, sys_perf_event_open)
659#define __NR_accept4 242 659#define __NR_accept4 242
660__SYSCALL(__NR_accept4, sys_accept4) 660__SYSCALL(__NR_accept4, sys_accept4)
661#define __NR_recvmmsg 243 661#define __NR_recvmmsg 243
662__SC_COMP(__NR_recvmmsg, sys_recvmmsg, compat_sys_recvmmsg) 662__SC_COMP_3264(__NR_recvmmsg, sys_recvmmsg_time32, sys_recvmmsg, compat_sys_recvmmsg_time32)
663 663
664/* 664/*
665 * Architectures may provide up to 16 syscalls of their own 665 * Architectures may provide up to 16 syscalls of their own
@@ -681,7 +681,7 @@ __SYSCALL(__NR_name_to_handle_at, sys_name_to_handle_at)
681__SC_COMP(__NR_open_by_handle_at, sys_open_by_handle_at, \ 681__SC_COMP(__NR_open_by_handle_at, sys_open_by_handle_at, \
682 compat_sys_open_by_handle_at) 682 compat_sys_open_by_handle_at)
683#define __NR_clock_adjtime 266 683#define __NR_clock_adjtime 266
684__SC_COMP(__NR_clock_adjtime, sys_clock_adjtime, compat_sys_clock_adjtime) 684__SC_3264(__NR_clock_adjtime, sys_clock_adjtime32, sys_clock_adjtime)
685#define __NR_syncfs 267 685#define __NR_syncfs 267
686__SYSCALL(__NR_syncfs, sys_syncfs) 686__SYSCALL(__NR_syncfs, sys_syncfs)
687#define __NR_setns 268 687#define __NR_setns 268
@@ -735,15 +735,57 @@ __SYSCALL(__NR_pkey_free, sys_pkey_free)
735#define __NR_statx 291 735#define __NR_statx 291
736__SYSCALL(__NR_statx, sys_statx) 736__SYSCALL(__NR_statx, sys_statx)
737#define __NR_io_pgetevents 292 737#define __NR_io_pgetevents 292
738__SC_COMP(__NR_io_pgetevents, sys_io_pgetevents, compat_sys_io_pgetevents) 738__SC_COMP_3264(__NR_io_pgetevents, sys_io_pgetevents_time32, sys_io_pgetevents, compat_sys_io_pgetevents)
739#define __NR_rseq 293 739#define __NR_rseq 293
740__SYSCALL(__NR_rseq, sys_rseq) 740__SYSCALL(__NR_rseq, sys_rseq)
741#define __NR_kexec_file_load 294 741#define __NR_kexec_file_load 294
742__SYSCALL(__NR_kexec_file_load, sys_kexec_file_load) 742__SYSCALL(__NR_kexec_file_load, sys_kexec_file_load)
743/* 295 through 402 are unassigned to sync up with generic numbers, don't use */ 743/* 295 through 402 are unassigned to sync up with generic numbers, don't use */
744#if __BITS_PER_LONG == 32
745#define __NR_clock_gettime64 403
746__SYSCALL(__NR_clock_gettime64, sys_clock_gettime)
747#define __NR_clock_settime64 404
748__SYSCALL(__NR_clock_settime64, sys_clock_settime)
749#define __NR_clock_adjtime64 405
750__SYSCALL(__NR_clock_adjtime64, sys_clock_adjtime)
751#define __NR_clock_getres_time64 406
752__SYSCALL(__NR_clock_getres_time64, sys_clock_getres)
753#define __NR_clock_nanosleep_time64 407
754__SYSCALL(__NR_clock_nanosleep_time64, sys_clock_nanosleep)
755#define __NR_timer_gettime64 408
756__SYSCALL(__NR_timer_gettime64, sys_timer_gettime)
757#define __NR_timer_settime64 409
758__SYSCALL(__NR_timer_settime64, sys_timer_settime)
759#define __NR_timerfd_gettime64 410
760__SYSCALL(__NR_timerfd_gettime64, sys_timerfd_gettime)
761#define __NR_timerfd_settime64 411
762__SYSCALL(__NR_timerfd_settime64, sys_timerfd_settime)
763#define __NR_utimensat_time64 412
764__SYSCALL(__NR_utimensat_time64, sys_utimensat)
765#define __NR_pselect6_time64 413
766__SC_COMP(__NR_pselect6_time64, sys_pselect6, compat_sys_pselect6_time64)
767#define __NR_ppoll_time64 414
768__SC_COMP(__NR_ppoll_time64, sys_ppoll, compat_sys_ppoll_time64)
769#define __NR_io_pgetevents_time64 416
770__SYSCALL(__NR_io_pgetevents_time64, sys_io_pgetevents)
771#define __NR_recvmmsg_time64 417
772__SC_COMP(__NR_recvmmsg_time64, sys_recvmmsg, compat_sys_recvmmsg_time64)
773#define __NR_mq_timedsend_time64 418
774__SYSCALL(__NR_mq_timedsend_time64, sys_mq_timedsend)
775#define __NR_mq_timedreceive_time64 419
776__SYSCALL(__NR_mq_timedreceive_time64, sys_mq_timedreceive)
777#define __NR_semtimedop_time64 420
778__SYSCALL(__NR_semtimedop_time64, sys_semtimedop)
779#define __NR_rt_sigtimedwait_time64 421
780__SC_COMP(__NR_rt_sigtimedwait_time64, sys_rt_sigtimedwait, compat_sys_rt_sigtimedwait_time64)
781#define __NR_futex_time64 422
782__SYSCALL(__NR_futex_time64, sys_futex)
783#define __NR_sched_rr_get_interval_time64 423
784__SYSCALL(__NR_sched_rr_get_interval_time64, sys_sched_rr_get_interval)
785#endif
744 786
745#undef __NR_syscalls 787#undef __NR_syscalls
746#define __NR_syscalls 295 788#define __NR_syscalls 424
747 789
748/* 790/*
749 * 32 bit systems traditionally used different 791 * 32 bit systems traditionally used different
diff --git a/include/uapi/linux/time.h b/include/uapi/linux/time.h
index 6b56a2208be7..b03f8717c312 100644
--- a/include/uapi/linux/time.h
+++ b/include/uapi/linux/time.h
@@ -42,19 +42,15 @@ struct itimerval {
42 struct timeval it_value; /* current value */ 42 struct timeval it_value; /* current value */
43}; 43};
44 44
45#ifndef __kernel_timespec
46struct __kernel_timespec { 45struct __kernel_timespec {
47 __kernel_time64_t tv_sec; /* seconds */ 46 __kernel_time64_t tv_sec; /* seconds */
48 long long tv_nsec; /* nanoseconds */ 47 long long tv_nsec; /* nanoseconds */
49}; 48};
50#endif
51 49
52#ifndef __kernel_itimerspec
53struct __kernel_itimerspec { 50struct __kernel_itimerspec {
54 struct __kernel_timespec it_interval; /* timer period */ 51 struct __kernel_timespec it_interval; /* timer period */
55 struct __kernel_timespec it_value; /* timer expiration */ 52 struct __kernel_timespec it_value; /* timer expiration */
56}; 53};
57#endif
58 54
59/* 55/*
60 * legacy timeval structure, only embedded in structures that 56 * legacy timeval structure, only embedded in structures that
diff --git a/include/uapi/linux/timex.h b/include/uapi/linux/timex.h
index 92685d826444..9f517f9010bb 100644
--- a/include/uapi/linux/timex.h
+++ b/include/uapi/linux/timex.h
@@ -92,6 +92,45 @@ struct timex {
92 int :32; int :32; int :32; 92 int :32; int :32; int :32;
93}; 93};
94 94
95struct __kernel_timex_timeval {
96 __kernel_time64_t tv_sec;
97 long long tv_usec;
98};
99
100struct __kernel_timex {
101 unsigned int modes; /* mode selector */
102 int :32; /* pad */
103 long long offset; /* time offset (usec) */
104 long long freq; /* frequency offset (scaled ppm) */
105 long long maxerror;/* maximum error (usec) */
106 long long esterror;/* estimated error (usec) */
107 int status; /* clock command/status */
108 int :32; /* pad */
109 long long constant;/* pll time constant */
110 long long precision;/* clock precision (usec) (read only) */
111 long long tolerance;/* clock frequency tolerance (ppm)
112 * (read only)
113 */
114 struct __kernel_timex_timeval time; /* (read only, except for ADJ_SETOFFSET) */
115 long long tick; /* (modified) usecs between clock ticks */
116
117 long long ppsfreq;/* pps frequency (scaled ppm) (ro) */
118 long long jitter; /* pps jitter (us) (ro) */
119 int shift; /* interval duration (s) (shift) (ro) */
120 int :32; /* pad */
121 long long stabil; /* pps stability (scaled ppm) (ro) */
122 long long jitcnt; /* jitter limit exceeded (ro) */
123 long long calcnt; /* calibration intervals (ro) */
124 long long errcnt; /* calibration errors (ro) */
125 long long stbcnt; /* stability limit exceeded (ro) */
126
127 int tai; /* TAI offset (ro) */
128
129 int :32; int :32; int :32; int :32;
130 int :32; int :32; int :32; int :32;
131 int :32; int :32; int :32;
132};
133
95/* 134/*
96 * Mode codes (timex.mode) 135 * Mode codes (timex.mode)
97 */ 136 */
diff --git a/ipc/mqueue.c b/ipc/mqueue.c
index c595bed7bfcb..c839bf83231d 100644
--- a/ipc/mqueue.c
+++ b/ipc/mqueue.c
@@ -1471,10 +1471,10 @@ static int compat_prepare_timeout(const struct old_timespec32 __user *p,
1471 return 0; 1471 return 0;
1472} 1472}
1473 1473
1474COMPAT_SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes, 1474SYSCALL_DEFINE5(mq_timedsend_time32, mqd_t, mqdes,
1475 const char __user *, u_msg_ptr, 1475 const char __user *, u_msg_ptr,
1476 compat_size_t, msg_len, unsigned int, msg_prio, 1476 unsigned int, msg_len, unsigned int, msg_prio,
1477 const struct old_timespec32 __user *, u_abs_timeout) 1477 const struct old_timespec32 __user *, u_abs_timeout)
1478{ 1478{
1479 struct timespec64 ts, *p = NULL; 1479 struct timespec64 ts, *p = NULL;
1480 if (u_abs_timeout) { 1480 if (u_abs_timeout) {
@@ -1486,10 +1486,10 @@ COMPAT_SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes,
1486 return do_mq_timedsend(mqdes, u_msg_ptr, msg_len, msg_prio, p); 1486 return do_mq_timedsend(mqdes, u_msg_ptr, msg_len, msg_prio, p);
1487} 1487}
1488 1488
1489COMPAT_SYSCALL_DEFINE5(mq_timedreceive, mqd_t, mqdes, 1489SYSCALL_DEFINE5(mq_timedreceive_time32, mqd_t, mqdes,
1490 char __user *, u_msg_ptr, 1490 char __user *, u_msg_ptr,
1491 compat_size_t, msg_len, unsigned int __user *, u_msg_prio, 1491 unsigned int, msg_len, unsigned int __user *, u_msg_prio,
1492 const struct old_timespec32 __user *, u_abs_timeout) 1492 const struct old_timespec32 __user *, u_abs_timeout)
1493{ 1493{
1494 struct timespec64 ts, *p = NULL; 1494 struct timespec64 ts, *p = NULL;
1495 if (u_abs_timeout) { 1495 if (u_abs_timeout) {
diff --git a/ipc/sem.c b/ipc/sem.c
index d1efff3a81bb..80909464acff 100644
--- a/ipc/sem.c
+++ b/ipc/sem.c
@@ -2250,7 +2250,7 @@ long compat_ksys_semtimedop(int semid, struct sembuf __user *tsems,
2250 return do_semtimedop(semid, tsems, nsops, NULL); 2250 return do_semtimedop(semid, tsems, nsops, NULL);
2251} 2251}
2252 2252
2253COMPAT_SYSCALL_DEFINE4(semtimedop, int, semid, struct sembuf __user *, tsems, 2253SYSCALL_DEFINE4(semtimedop_time32, int, semid, struct sembuf __user *, tsems,
2254 unsigned int, nsops, 2254 unsigned int, nsops,
2255 const struct old_timespec32 __user *, timeout) 2255 const struct old_timespec32 __user *, timeout)
2256{ 2256{
diff --git a/kernel/compat.c b/kernel/compat.c
index f01affa17e22..d8a36c6ad7c9 100644
--- a/kernel/compat.c
+++ b/kernel/compat.c
@@ -20,7 +20,6 @@
20#include <linux/syscalls.h> 20#include <linux/syscalls.h>
21#include <linux/unistd.h> 21#include <linux/unistd.h>
22#include <linux/security.h> 22#include <linux/security.h>
23#include <linux/timex.h>
24#include <linux/export.h> 23#include <linux/export.h>
25#include <linux/migrate.h> 24#include <linux/migrate.h>
26#include <linux/posix-timers.h> 25#include <linux/posix-timers.h>
@@ -30,69 +29,6 @@
30 29
31#include <linux/uaccess.h> 30#include <linux/uaccess.h>
32 31
33int compat_get_timex(struct timex *txc, const struct compat_timex __user *utp)
34{
35 struct compat_timex tx32;
36
37 memset(txc, 0, sizeof(struct timex));
38 if (copy_from_user(&tx32, utp, sizeof(struct compat_timex)))
39 return -EFAULT;
40
41 txc->modes = tx32.modes;
42 txc->offset = tx32.offset;
43 txc->freq = tx32.freq;
44 txc->maxerror = tx32.maxerror;
45 txc->esterror = tx32.esterror;
46 txc->status = tx32.status;
47 txc->constant = tx32.constant;
48 txc->precision = tx32.precision;
49 txc->tolerance = tx32.tolerance;
50 txc->time.tv_sec = tx32.time.tv_sec;
51 txc->time.tv_usec = tx32.time.tv_usec;
52 txc->tick = tx32.tick;
53 txc->ppsfreq = tx32.ppsfreq;
54 txc->jitter = tx32.jitter;
55 txc->shift = tx32.shift;
56 txc->stabil = tx32.stabil;
57 txc->jitcnt = tx32.jitcnt;
58 txc->calcnt = tx32.calcnt;
59 txc->errcnt = tx32.errcnt;
60 txc->stbcnt = tx32.stbcnt;
61
62 return 0;
63}
64
65int compat_put_timex(struct compat_timex __user *utp, const struct timex *txc)
66{
67 struct compat_timex tx32;
68
69 memset(&tx32, 0, sizeof(struct compat_timex));
70 tx32.modes = txc->modes;
71 tx32.offset = txc->offset;
72 tx32.freq = txc->freq;
73 tx32.maxerror = txc->maxerror;
74 tx32.esterror = txc->esterror;
75 tx32.status = txc->status;
76 tx32.constant = txc->constant;
77 tx32.precision = txc->precision;
78 tx32.tolerance = txc->tolerance;
79 tx32.time.tv_sec = txc->time.tv_sec;
80 tx32.time.tv_usec = txc->time.tv_usec;
81 tx32.tick = txc->tick;
82 tx32.ppsfreq = txc->ppsfreq;
83 tx32.jitter = txc->jitter;
84 tx32.shift = txc->shift;
85 tx32.stabil = txc->stabil;
86 tx32.jitcnt = txc->jitcnt;
87 tx32.calcnt = txc->calcnt;
88 tx32.errcnt = txc->errcnt;
89 tx32.stbcnt = txc->stbcnt;
90 tx32.tai = txc->tai;
91 if (copy_to_user(utp, &tx32, sizeof(struct compat_timex)))
92 return -EFAULT;
93 return 0;
94}
95
96static int __compat_get_timeval(struct timeval *tv, const struct old_timeval32 __user *ctv) 32static int __compat_get_timeval(struct timeval *tv, const struct old_timeval32 __user *ctv)
97{ 33{
98 return (!access_ok(ctv, sizeof(*ctv)) || 34 return (!access_ok(ctv, sizeof(*ctv)) ||
diff --git a/kernel/futex.c b/kernel/futex.c
index fdd312da0992..26fb8a0909ad 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -3815,7 +3815,7 @@ err_unlock:
3815#endif /* CONFIG_COMPAT */ 3815#endif /* CONFIG_COMPAT */
3816 3816
3817#ifdef CONFIG_COMPAT_32BIT_TIME 3817#ifdef CONFIG_COMPAT_32BIT_TIME
3818COMPAT_SYSCALL_DEFINE6(futex, u32 __user *, uaddr, int, op, u32, val, 3818SYSCALL_DEFINE6(futex_time32, u32 __user *, uaddr, int, op, u32, val,
3819 struct old_timespec32 __user *, utime, u32 __user *, uaddr2, 3819 struct old_timespec32 __user *, utime, u32 __user *, uaddr2,
3820 u32, val3) 3820 u32, val3)
3821{ 3821{
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index d8d76a65cfdd..c09d0bd9377a 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -5265,9 +5265,8 @@ SYSCALL_DEFINE2(sched_rr_get_interval, pid_t, pid,
5265} 5265}
5266 5266
5267#ifdef CONFIG_COMPAT_32BIT_TIME 5267#ifdef CONFIG_COMPAT_32BIT_TIME
5268COMPAT_SYSCALL_DEFINE2(sched_rr_get_interval, 5268SYSCALL_DEFINE2(sched_rr_get_interval_time32, pid_t, pid,
5269 compat_pid_t, pid, 5269 struct old_timespec32 __user *, interval)
5270 struct old_timespec32 __user *, interval)
5271{ 5270{
5272 struct timespec64 t; 5271 struct timespec64 t;
5273 int retval = sched_rr_get_interval(pid, &t); 5272 int retval = sched_rr_get_interval(pid, &t);
diff --git a/kernel/signal.c b/kernel/signal.c
index e1d7ad8e6ab1..af27629918cf 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -3397,7 +3397,7 @@ COMPAT_SYSCALL_DEFINE4(rt_sigtimedwait_time64, compat_sigset_t __user *, uthese,
3397} 3397}
3398 3398
3399#ifdef CONFIG_COMPAT_32BIT_TIME 3399#ifdef CONFIG_COMPAT_32BIT_TIME
3400COMPAT_SYSCALL_DEFINE4(rt_sigtimedwait, compat_sigset_t __user *, uthese, 3400COMPAT_SYSCALL_DEFINE4(rt_sigtimedwait_time32, compat_sigset_t __user *, uthese,
3401 struct compat_siginfo __user *, uinfo, 3401 struct compat_siginfo __user *, uinfo,
3402 struct old_timespec32 __user *, uts, compat_size_t, sigsetsize) 3402 struct old_timespec32 __user *, uts, compat_size_t, sigsetsize)
3403{ 3403{
diff --git a/kernel/sys_ni.c b/kernel/sys_ni.c
index ce04431a40d1..85e5ccec0955 100644
--- a/kernel/sys_ni.c
+++ b/kernel/sys_ni.c
@@ -42,9 +42,11 @@ COND_SYSCALL(io_destroy);
42COND_SYSCALL(io_submit); 42COND_SYSCALL(io_submit);
43COND_SYSCALL_COMPAT(io_submit); 43COND_SYSCALL_COMPAT(io_submit);
44COND_SYSCALL(io_cancel); 44COND_SYSCALL(io_cancel);
45COND_SYSCALL(io_getevents_time32);
45COND_SYSCALL(io_getevents); 46COND_SYSCALL(io_getevents);
47COND_SYSCALL(io_pgetevents_time32);
46COND_SYSCALL(io_pgetevents); 48COND_SYSCALL(io_pgetevents);
47COND_SYSCALL_COMPAT(io_getevents); 49COND_SYSCALL_COMPAT(io_pgetevents_time32);
48COND_SYSCALL_COMPAT(io_pgetevents); 50COND_SYSCALL_COMPAT(io_pgetevents);
49 51
50/* fs/xattr.c */ 52/* fs/xattr.c */
@@ -114,9 +116,9 @@ COND_SYSCALL_COMPAT(signalfd4);
114/* fs/timerfd.c */ 116/* fs/timerfd.c */
115COND_SYSCALL(timerfd_create); 117COND_SYSCALL(timerfd_create);
116COND_SYSCALL(timerfd_settime); 118COND_SYSCALL(timerfd_settime);
117COND_SYSCALL_COMPAT(timerfd_settime); 119COND_SYSCALL(timerfd_settime32);
118COND_SYSCALL(timerfd_gettime); 120COND_SYSCALL(timerfd_gettime);
119COND_SYSCALL_COMPAT(timerfd_gettime); 121COND_SYSCALL(timerfd_gettime32);
120 122
121/* fs/utimes.c */ 123/* fs/utimes.c */
122 124
@@ -135,7 +137,7 @@ COND_SYSCALL(capset);
135 137
136/* kernel/futex.c */ 138/* kernel/futex.c */
137COND_SYSCALL(futex); 139COND_SYSCALL(futex);
138COND_SYSCALL_COMPAT(futex); 140COND_SYSCALL(futex_time32);
139COND_SYSCALL(set_robust_list); 141COND_SYSCALL(set_robust_list);
140COND_SYSCALL_COMPAT(set_robust_list); 142COND_SYSCALL_COMPAT(set_robust_list);
141COND_SYSCALL(get_robust_list); 143COND_SYSCALL(get_robust_list);
@@ -187,9 +189,9 @@ COND_SYSCALL(mq_open);
187COND_SYSCALL_COMPAT(mq_open); 189COND_SYSCALL_COMPAT(mq_open);
188COND_SYSCALL(mq_unlink); 190COND_SYSCALL(mq_unlink);
189COND_SYSCALL(mq_timedsend); 191COND_SYSCALL(mq_timedsend);
190COND_SYSCALL_COMPAT(mq_timedsend); 192COND_SYSCALL(mq_timedsend_time32);
191COND_SYSCALL(mq_timedreceive); 193COND_SYSCALL(mq_timedreceive);
192COND_SYSCALL_COMPAT(mq_timedreceive); 194COND_SYSCALL(mq_timedreceive_time32);
193COND_SYSCALL(mq_notify); 195COND_SYSCALL(mq_notify);
194COND_SYSCALL_COMPAT(mq_notify); 196COND_SYSCALL_COMPAT(mq_notify);
195COND_SYSCALL(mq_getsetattr); 197COND_SYSCALL(mq_getsetattr);
@@ -211,7 +213,7 @@ COND_SYSCALL(old_semctl);
211COND_SYSCALL(semctl); 213COND_SYSCALL(semctl);
212COND_SYSCALL_COMPAT(semctl); 214COND_SYSCALL_COMPAT(semctl);
213COND_SYSCALL(semtimedop); 215COND_SYSCALL(semtimedop);
214COND_SYSCALL_COMPAT(semtimedop); 216COND_SYSCALL(semtimedop_time32);
215COND_SYSCALL(semop); 217COND_SYSCALL(semop);
216 218
217/* ipc/shm.c */ 219/* ipc/shm.c */
@@ -288,7 +290,7 @@ COND_SYSCALL(perf_event_open);
288COND_SYSCALL(accept4); 290COND_SYSCALL(accept4);
289COND_SYSCALL(recvmmsg); 291COND_SYSCALL(recvmmsg);
290COND_SYSCALL(recvmmsg_time32); 292COND_SYSCALL(recvmmsg_time32);
291COND_SYSCALL_COMPAT(recvmmsg); 293COND_SYSCALL_COMPAT(recvmmsg_time32);
292COND_SYSCALL_COMPAT(recvmmsg_time64); 294COND_SYSCALL_COMPAT(recvmmsg_time64);
293 295
294/* 296/*
diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
index f5cfa1b73d6f..0f5f96075110 100644
--- a/kernel/time/hrtimer.c
+++ b/kernel/time/hrtimer.c
@@ -1771,7 +1771,7 @@ SYSCALL_DEFINE2(nanosleep, struct __kernel_timespec __user *, rqtp,
1771 1771
1772#ifdef CONFIG_COMPAT_32BIT_TIME 1772#ifdef CONFIG_COMPAT_32BIT_TIME
1773 1773
1774COMPAT_SYSCALL_DEFINE2(nanosleep, struct old_timespec32 __user *, rqtp, 1774SYSCALL_DEFINE2(nanosleep_time32, struct old_timespec32 __user *, rqtp,
1775 struct old_timespec32 __user *, rmtp) 1775 struct old_timespec32 __user *, rmtp)
1776{ 1776{
1777 struct timespec64 tu; 1777 struct timespec64 tu;
diff --git a/kernel/time/ntp.c b/kernel/time/ntp.c
index 36a2bef00125..92a90014a925 100644
--- a/kernel/time/ntp.c
+++ b/kernel/time/ntp.c
@@ -188,13 +188,13 @@ static inline int is_error_status(int status)
188 && (status & (STA_PPSWANDER|STA_PPSERROR))); 188 && (status & (STA_PPSWANDER|STA_PPSERROR)));
189} 189}
190 190
191static inline void pps_fill_timex(struct timex *txc) 191static inline void pps_fill_timex(struct __kernel_timex *txc)
192{ 192{
193 txc->ppsfreq = shift_right((pps_freq >> PPM_SCALE_INV_SHIFT) * 193 txc->ppsfreq = shift_right((pps_freq >> PPM_SCALE_INV_SHIFT) *
194 PPM_SCALE_INV, NTP_SCALE_SHIFT); 194 PPM_SCALE_INV, NTP_SCALE_SHIFT);
195 txc->jitter = pps_jitter; 195 txc->jitter = pps_jitter;
196 if (!(time_status & STA_NANO)) 196 if (!(time_status & STA_NANO))
197 txc->jitter /= NSEC_PER_USEC; 197 txc->jitter = pps_jitter / NSEC_PER_USEC;
198 txc->shift = pps_shift; 198 txc->shift = pps_shift;
199 txc->stabil = pps_stabil; 199 txc->stabil = pps_stabil;
200 txc->jitcnt = pps_jitcnt; 200 txc->jitcnt = pps_jitcnt;
@@ -220,7 +220,7 @@ static inline int is_error_status(int status)
220 return status & (STA_UNSYNC|STA_CLOCKERR); 220 return status & (STA_UNSYNC|STA_CLOCKERR);
221} 221}
222 222
223static inline void pps_fill_timex(struct timex *txc) 223static inline void pps_fill_timex(struct __kernel_timex *txc)
224{ 224{
225 /* PPS is not implemented, so these are zero */ 225 /* PPS is not implemented, so these are zero */
226 txc->ppsfreq = 0; 226 txc->ppsfreq = 0;
@@ -633,7 +633,7 @@ void ntp_notify_cmos_timer(void)
633/* 633/*
634 * Propagate a new txc->status value into the NTP state: 634 * Propagate a new txc->status value into the NTP state:
635 */ 635 */
636static inline void process_adj_status(const struct timex *txc) 636static inline void process_adj_status(const struct __kernel_timex *txc)
637{ 637{
638 if ((time_status & STA_PLL) && !(txc->status & STA_PLL)) { 638 if ((time_status & STA_PLL) && !(txc->status & STA_PLL)) {
639 time_state = TIME_OK; 639 time_state = TIME_OK;
@@ -656,7 +656,8 @@ static inline void process_adj_status(const struct timex *txc)
656} 656}
657 657
658 658
659static inline void process_adjtimex_modes(const struct timex *txc, s32 *time_tai) 659static inline void process_adjtimex_modes(const struct __kernel_timex *txc,
660 s32 *time_tai)
660{ 661{
661 if (txc->modes & ADJ_STATUS) 662 if (txc->modes & ADJ_STATUS)
662 process_adj_status(txc); 663 process_adj_status(txc);
@@ -707,7 +708,8 @@ static inline void process_adjtimex_modes(const struct timex *txc, s32 *time_tai
707 * adjtimex mainly allows reading (and writing, if superuser) of 708 * adjtimex mainly allows reading (and writing, if superuser) of
708 * kernel time-keeping variables. used by xntpd. 709 * kernel time-keeping variables. used by xntpd.
709 */ 710 */
710int __do_adjtimex(struct timex *txc, const struct timespec64 *ts, s32 *time_tai) 711int __do_adjtimex(struct __kernel_timex *txc, const struct timespec64 *ts,
712 s32 *time_tai)
711{ 713{
712 int result; 714 int result;
713 715
@@ -729,7 +731,7 @@ int __do_adjtimex(struct timex *txc, const struct timespec64 *ts, s32 *time_tai)
729 txc->offset = shift_right(time_offset * NTP_INTERVAL_FREQ, 731 txc->offset = shift_right(time_offset * NTP_INTERVAL_FREQ,
730 NTP_SCALE_SHIFT); 732 NTP_SCALE_SHIFT);
731 if (!(time_status & STA_NANO)) 733 if (!(time_status & STA_NANO))
732 txc->offset /= NSEC_PER_USEC; 734 txc->offset = (u32)txc->offset / NSEC_PER_USEC;
733 } 735 }
734 736
735 result = time_state; /* mostly `TIME_OK' */ 737 result = time_state; /* mostly `TIME_OK' */
@@ -754,7 +756,7 @@ int __do_adjtimex(struct timex *txc, const struct timespec64 *ts, s32 *time_tai)
754 txc->time.tv_sec = (time_t)ts->tv_sec; 756 txc->time.tv_sec = (time_t)ts->tv_sec;
755 txc->time.tv_usec = ts->tv_nsec; 757 txc->time.tv_usec = ts->tv_nsec;
756 if (!(time_status & STA_NANO)) 758 if (!(time_status & STA_NANO))
757 txc->time.tv_usec /= NSEC_PER_USEC; 759 txc->time.tv_usec = ts->tv_nsec / NSEC_PER_USEC;
758 760
759 /* Handle leapsec adjustments */ 761 /* Handle leapsec adjustments */
760 if (unlikely(ts->tv_sec >= ntp_next_leap_sec)) { 762 if (unlikely(ts->tv_sec >= ntp_next_leap_sec)) {
diff --git a/kernel/time/ntp_internal.h b/kernel/time/ntp_internal.h
index c24b0e13f011..40e6122e634e 100644
--- a/kernel/time/ntp_internal.h
+++ b/kernel/time/ntp_internal.h
@@ -8,6 +8,6 @@ extern void ntp_clear(void);
8extern u64 ntp_tick_length(void); 8extern u64 ntp_tick_length(void);
9extern ktime_t ntp_get_next_leap(void); 9extern ktime_t ntp_get_next_leap(void);
10extern int second_overflow(time64_t secs); 10extern int second_overflow(time64_t secs);
11extern int __do_adjtimex(struct timex *txc, const struct timespec64 *ts, s32 *time_tai); 11extern int __do_adjtimex(struct __kernel_timex *txc, const struct timespec64 *ts, s32 *time_tai);
12extern void __hardpps(const struct timespec64 *phase_ts, const struct timespec64 *raw_ts); 12extern void __hardpps(const struct timespec64 *phase_ts, const struct timespec64 *raw_ts);
13#endif /* _LINUX_NTP_INTERNAL_H */ 13#endif /* _LINUX_NTP_INTERNAL_H */
diff --git a/kernel/time/posix-clock.c b/kernel/time/posix-clock.c
index 425bbfce6819..ec960bb939fd 100644
--- a/kernel/time/posix-clock.c
+++ b/kernel/time/posix-clock.c
@@ -228,7 +228,7 @@ static void put_clock_desc(struct posix_clock_desc *cd)
228 fput(cd->fp); 228 fput(cd->fp);
229} 229}
230 230
231static int pc_clock_adjtime(clockid_t id, struct timex *tx) 231static int pc_clock_adjtime(clockid_t id, struct __kernel_timex *tx)
232{ 232{
233 struct posix_clock_desc cd; 233 struct posix_clock_desc cd;
234 int err; 234 int err;
diff --git a/kernel/time/posix-stubs.c b/kernel/time/posix-stubs.c
index a51895486e5e..67df65f887ac 100644
--- a/kernel/time/posix-stubs.c
+++ b/kernel/time/posix-stubs.c
@@ -45,6 +45,7 @@ SYS_NI(timer_delete);
45SYS_NI(clock_adjtime); 45SYS_NI(clock_adjtime);
46SYS_NI(getitimer); 46SYS_NI(getitimer);
47SYS_NI(setitimer); 47SYS_NI(setitimer);
48SYS_NI(clock_adjtime32);
48#ifdef __ARCH_WANT_SYS_ALARM 49#ifdef __ARCH_WANT_SYS_ALARM
49SYS_NI(alarm); 50SYS_NI(alarm);
50#endif 51#endif
@@ -150,16 +151,16 @@ SYSCALL_DEFINE4(clock_nanosleep, const clockid_t, which_clock, int, flags,
150 151
151#ifdef CONFIG_COMPAT 152#ifdef CONFIG_COMPAT
152COMPAT_SYS_NI(timer_create); 153COMPAT_SYS_NI(timer_create);
153COMPAT_SYS_NI(clock_adjtime);
154COMPAT_SYS_NI(timer_settime);
155COMPAT_SYS_NI(timer_gettime);
156COMPAT_SYS_NI(getitimer); 154COMPAT_SYS_NI(getitimer);
157COMPAT_SYS_NI(setitimer); 155COMPAT_SYS_NI(setitimer);
158#endif 156#endif
159 157
160#ifdef CONFIG_COMPAT_32BIT_TIME 158#ifdef CONFIG_COMPAT_32BIT_TIME
161COMPAT_SYSCALL_DEFINE2(clock_settime, const clockid_t, which_clock, 159SYS_NI(timer_settime32);
162 struct old_timespec32 __user *, tp) 160SYS_NI(timer_gettime32);
161
162SYSCALL_DEFINE2(clock_settime32, const clockid_t, which_clock,
163 struct old_timespec32 __user *, tp)
163{ 164{
164 struct timespec64 new_tp; 165 struct timespec64 new_tp;
165 166
@@ -171,8 +172,8 @@ COMPAT_SYSCALL_DEFINE2(clock_settime, const clockid_t, which_clock,
171 return do_sys_settimeofday64(&new_tp, NULL); 172 return do_sys_settimeofday64(&new_tp, NULL);
172} 173}
173 174
174COMPAT_SYSCALL_DEFINE2(clock_gettime, clockid_t, which_clock, 175SYSCALL_DEFINE2(clock_gettime32, clockid_t, which_clock,
175 struct old_timespec32 __user *, tp) 176 struct old_timespec32 __user *, tp)
176{ 177{
177 int ret; 178 int ret;
178 struct timespec64 kernel_tp; 179 struct timespec64 kernel_tp;
@@ -186,8 +187,8 @@ COMPAT_SYSCALL_DEFINE2(clock_gettime, clockid_t, which_clock,
186 return 0; 187 return 0;
187} 188}
188 189
189COMPAT_SYSCALL_DEFINE2(clock_getres, clockid_t, which_clock, 190SYSCALL_DEFINE2(clock_getres_time32, clockid_t, which_clock,
190 struct old_timespec32 __user *, tp) 191 struct old_timespec32 __user *, tp)
191{ 192{
192 struct timespec64 rtn_tp = { 193 struct timespec64 rtn_tp = {
193 .tv_sec = 0, 194 .tv_sec = 0,
@@ -206,9 +207,9 @@ COMPAT_SYSCALL_DEFINE2(clock_getres, clockid_t, which_clock,
206 } 207 }
207} 208}
208 209
209COMPAT_SYSCALL_DEFINE4(clock_nanosleep, clockid_t, which_clock, int, flags, 210SYSCALL_DEFINE4(clock_nanosleep_time32, clockid_t, which_clock, int, flags,
210 struct old_timespec32 __user *, rqtp, 211 struct old_timespec32 __user *, rqtp,
211 struct old_timespec32 __user *, rmtp) 212 struct old_timespec32 __user *, rmtp)
212{ 213{
213 struct timespec64 t; 214 struct timespec64 t;
214 215
diff --git a/kernel/time/posix-timers.c b/kernel/time/posix-timers.c
index 0e84bb72a3da..29176635991f 100644
--- a/kernel/time/posix-timers.c
+++ b/kernel/time/posix-timers.c
@@ -179,7 +179,7 @@ static int posix_clock_realtime_set(const clockid_t which_clock,
179} 179}
180 180
181static int posix_clock_realtime_adj(const clockid_t which_clock, 181static int posix_clock_realtime_adj(const clockid_t which_clock,
182 struct timex *t) 182 struct __kernel_timex *t)
183{ 183{
184 return do_adjtimex(t); 184 return do_adjtimex(t);
185} 185}
@@ -730,8 +730,8 @@ SYSCALL_DEFINE2(timer_gettime, timer_t, timer_id,
730 730
731#ifdef CONFIG_COMPAT_32BIT_TIME 731#ifdef CONFIG_COMPAT_32BIT_TIME
732 732
733COMPAT_SYSCALL_DEFINE2(timer_gettime, timer_t, timer_id, 733SYSCALL_DEFINE2(timer_gettime32, timer_t, timer_id,
734 struct old_itimerspec32 __user *, setting) 734 struct old_itimerspec32 __user *, setting)
735{ 735{
736 struct itimerspec64 cur_setting; 736 struct itimerspec64 cur_setting;
737 737
@@ -903,9 +903,9 @@ SYSCALL_DEFINE4(timer_settime, timer_t, timer_id, int, flags,
903} 903}
904 904
905#ifdef CONFIG_COMPAT_32BIT_TIME 905#ifdef CONFIG_COMPAT_32BIT_TIME
906COMPAT_SYSCALL_DEFINE4(timer_settime, timer_t, timer_id, int, flags, 906SYSCALL_DEFINE4(timer_settime32, timer_t, timer_id, int, flags,
907 struct old_itimerspec32 __user *, new, 907 struct old_itimerspec32 __user *, new,
908 struct old_itimerspec32 __user *, old) 908 struct old_itimerspec32 __user *, old)
909{ 909{
910 struct itimerspec64 new_spec, old_spec; 910 struct itimerspec64 new_spec, old_spec;
911 struct itimerspec64 *rtn = old ? &old_spec : NULL; 911 struct itimerspec64 *rtn = old ? &old_spec : NULL;
@@ -1047,22 +1047,28 @@ SYSCALL_DEFINE2(clock_gettime, const clockid_t, which_clock,
1047 return error; 1047 return error;
1048} 1048}
1049 1049
1050SYSCALL_DEFINE2(clock_adjtime, const clockid_t, which_clock, 1050int do_clock_adjtime(const clockid_t which_clock, struct __kernel_timex * ktx)
1051 struct timex __user *, utx)
1052{ 1051{
1053 const struct k_clock *kc = clockid_to_kclock(which_clock); 1052 const struct k_clock *kc = clockid_to_kclock(which_clock);
1054 struct timex ktx;
1055 int err;
1056 1053
1057 if (!kc) 1054 if (!kc)
1058 return -EINVAL; 1055 return -EINVAL;
1059 if (!kc->clock_adj) 1056 if (!kc->clock_adj)
1060 return -EOPNOTSUPP; 1057 return -EOPNOTSUPP;
1061 1058
1059 return kc->clock_adj(which_clock, ktx);
1060}
1061
1062SYSCALL_DEFINE2(clock_adjtime, const clockid_t, which_clock,
1063 struct __kernel_timex __user *, utx)
1064{
1065 struct __kernel_timex ktx;
1066 int err;
1067
1062 if (copy_from_user(&ktx, utx, sizeof(ktx))) 1068 if (copy_from_user(&ktx, utx, sizeof(ktx)))
1063 return -EFAULT; 1069 return -EFAULT;
1064 1070
1065 err = kc->clock_adj(which_clock, &ktx); 1071 err = do_clock_adjtime(which_clock, &ktx);
1066 1072
1067 if (err >= 0 && copy_to_user(utx, &ktx, sizeof(ktx))) 1073 if (err >= 0 && copy_to_user(utx, &ktx, sizeof(ktx)))
1068 return -EFAULT; 1074 return -EFAULT;
@@ -1090,8 +1096,8 @@ SYSCALL_DEFINE2(clock_getres, const clockid_t, which_clock,
1090 1096
1091#ifdef CONFIG_COMPAT_32BIT_TIME 1097#ifdef CONFIG_COMPAT_32BIT_TIME
1092 1098
1093COMPAT_SYSCALL_DEFINE2(clock_settime, clockid_t, which_clock, 1099SYSCALL_DEFINE2(clock_settime32, clockid_t, which_clock,
1094 struct old_timespec32 __user *, tp) 1100 struct old_timespec32 __user *, tp)
1095{ 1101{
1096 const struct k_clock *kc = clockid_to_kclock(which_clock); 1102 const struct k_clock *kc = clockid_to_kclock(which_clock);
1097 struct timespec64 ts; 1103 struct timespec64 ts;
@@ -1105,8 +1111,8 @@ COMPAT_SYSCALL_DEFINE2(clock_settime, clockid_t, which_clock,
1105 return kc->clock_set(which_clock, &ts); 1111 return kc->clock_set(which_clock, &ts);
1106} 1112}
1107 1113
1108COMPAT_SYSCALL_DEFINE2(clock_gettime, clockid_t, which_clock, 1114SYSCALL_DEFINE2(clock_gettime32, clockid_t, which_clock,
1109 struct old_timespec32 __user *, tp) 1115 struct old_timespec32 __user *, tp)
1110{ 1116{
1111 const struct k_clock *kc = clockid_to_kclock(which_clock); 1117 const struct k_clock *kc = clockid_to_kclock(which_clock);
1112 struct timespec64 ts; 1118 struct timespec64 ts;
@@ -1123,40 +1129,26 @@ COMPAT_SYSCALL_DEFINE2(clock_gettime, clockid_t, which_clock,
1123 return err; 1129 return err;
1124} 1130}
1125 1131
1126#endif 1132SYSCALL_DEFINE2(clock_adjtime32, clockid_t, which_clock,
1127 1133 struct old_timex32 __user *, utp)
1128#ifdef CONFIG_COMPAT
1129
1130COMPAT_SYSCALL_DEFINE2(clock_adjtime, clockid_t, which_clock,
1131 struct compat_timex __user *, utp)
1132{ 1134{
1133 const struct k_clock *kc = clockid_to_kclock(which_clock); 1135 struct __kernel_timex ktx;
1134 struct timex ktx;
1135 int err; 1136 int err;
1136 1137
1137 if (!kc) 1138 err = get_old_timex32(&ktx, utp);
1138 return -EINVAL;
1139 if (!kc->clock_adj)
1140 return -EOPNOTSUPP;
1141
1142 err = compat_get_timex(&ktx, utp);
1143 if (err) 1139 if (err)
1144 return err; 1140 return err;
1145 1141
1146 err = kc->clock_adj(which_clock, &ktx); 1142 err = do_clock_adjtime(which_clock, &ktx);
1147 1143
1148 if (err >= 0) 1144 if (err >= 0)
1149 err = compat_put_timex(utp, &ktx); 1145 err = put_old_timex32(utp, &ktx);
1150 1146
1151 return err; 1147 return err;
1152} 1148}
1153 1149
1154#endif 1150SYSCALL_DEFINE2(clock_getres_time32, clockid_t, which_clock,
1155 1151 struct old_timespec32 __user *, tp)
1156#ifdef CONFIG_COMPAT_32BIT_TIME
1157
1158COMPAT_SYSCALL_DEFINE2(clock_getres, clockid_t, which_clock,
1159 struct old_timespec32 __user *, tp)
1160{ 1152{
1161 const struct k_clock *kc = clockid_to_kclock(which_clock); 1153 const struct k_clock *kc = clockid_to_kclock(which_clock);
1162 struct timespec64 ts; 1154 struct timespec64 ts;
@@ -1212,9 +1204,9 @@ SYSCALL_DEFINE4(clock_nanosleep, const clockid_t, which_clock, int, flags,
1212 1204
1213#ifdef CONFIG_COMPAT_32BIT_TIME 1205#ifdef CONFIG_COMPAT_32BIT_TIME
1214 1206
1215COMPAT_SYSCALL_DEFINE4(clock_nanosleep, clockid_t, which_clock, int, flags, 1207SYSCALL_DEFINE4(clock_nanosleep_time32, clockid_t, which_clock, int, flags,
1216 struct old_timespec32 __user *, rqtp, 1208 struct old_timespec32 __user *, rqtp,
1217 struct old_timespec32 __user *, rmtp) 1209 struct old_timespec32 __user *, rmtp)
1218{ 1210{
1219 const struct k_clock *kc = clockid_to_kclock(which_clock); 1211 const struct k_clock *kc = clockid_to_kclock(which_clock);
1220 struct timespec64 t; 1212 struct timespec64 t;
diff --git a/kernel/time/posix-timers.h b/kernel/time/posix-timers.h
index ddb21145211a..de5daa6d975a 100644
--- a/kernel/time/posix-timers.h
+++ b/kernel/time/posix-timers.h
@@ -8,7 +8,7 @@ struct k_clock {
8 const struct timespec64 *tp); 8 const struct timespec64 *tp);
9 int (*clock_get)(const clockid_t which_clock, 9 int (*clock_get)(const clockid_t which_clock,
10 struct timespec64 *tp); 10 struct timespec64 *tp);
11 int (*clock_adj)(const clockid_t which_clock, struct timex *tx); 11 int (*clock_adj)(const clockid_t which_clock, struct __kernel_timex *tx);
12 int (*timer_create)(struct k_itimer *timer); 12 int (*timer_create)(struct k_itimer *timer);
13 int (*nsleep)(const clockid_t which_clock, int flags, 13 int (*nsleep)(const clockid_t which_clock, int flags,
14 const struct timespec64 *); 14 const struct timespec64 *);
diff --git a/kernel/time/time.c b/kernel/time/time.c
index 2edb5088a70b..c3f756f8534b 100644
--- a/kernel/time/time.c
+++ b/kernel/time/time.c
@@ -98,11 +98,11 @@ SYSCALL_DEFINE1(stime, time_t __user *, tptr)
98 98
99#endif /* __ARCH_WANT_SYS_TIME */ 99#endif /* __ARCH_WANT_SYS_TIME */
100 100
101#ifdef CONFIG_COMPAT 101#ifdef CONFIG_COMPAT_32BIT_TIME
102#ifdef __ARCH_WANT_COMPAT_SYS_TIME 102#ifdef __ARCH_WANT_SYS_TIME32
103 103
104/* old_time32_t is a 32 bit "long" and needs to get converted. */ 104/* old_time32_t is a 32 bit "long" and needs to get converted. */
105COMPAT_SYSCALL_DEFINE1(time, old_time32_t __user *, tloc) 105SYSCALL_DEFINE1(time32, old_time32_t __user *, tloc)
106{ 106{
107 old_time32_t i; 107 old_time32_t i;
108 108
@@ -116,7 +116,7 @@ COMPAT_SYSCALL_DEFINE1(time, old_time32_t __user *, tloc)
116 return i; 116 return i;
117} 117}
118 118
119COMPAT_SYSCALL_DEFINE1(stime, old_time32_t __user *, tptr) 119SYSCALL_DEFINE1(stime32, old_time32_t __user *, tptr)
120{ 120{
121 struct timespec64 tv; 121 struct timespec64 tv;
122 int err; 122 int err;
@@ -134,7 +134,7 @@ COMPAT_SYSCALL_DEFINE1(stime, old_time32_t __user *, tptr)
134 return 0; 134 return 0;
135} 135}
136 136
137#endif /* __ARCH_WANT_COMPAT_SYS_TIME */ 137#endif /* __ARCH_WANT_SYS_TIME32 */
138#endif 138#endif
139 139
140SYSCALL_DEFINE2(gettimeofday, struct timeval __user *, tv, 140SYSCALL_DEFINE2(gettimeofday, struct timeval __user *, tv,
@@ -263,35 +263,99 @@ COMPAT_SYSCALL_DEFINE2(settimeofday, struct old_timeval32 __user *, tv,
263} 263}
264#endif 264#endif
265 265
266SYSCALL_DEFINE1(adjtimex, struct timex __user *, txc_p) 266#if !defined(CONFIG_64BIT_TIME) || defined(CONFIG_64BIT)
267SYSCALL_DEFINE1(adjtimex, struct __kernel_timex __user *, txc_p)
267{ 268{
268 struct timex txc; /* Local copy of parameter */ 269 struct __kernel_timex txc; /* Local copy of parameter */
269 int ret; 270 int ret;
270 271
271 /* Copy the user data space into the kernel copy 272 /* Copy the user data space into the kernel copy
272 * structure. But bear in mind that the structures 273 * structure. But bear in mind that the structures
273 * may change 274 * may change
274 */ 275 */
275 if (copy_from_user(&txc, txc_p, sizeof(struct timex))) 276 if (copy_from_user(&txc, txc_p, sizeof(struct __kernel_timex)))
276 return -EFAULT; 277 return -EFAULT;
277 ret = do_adjtimex(&txc); 278 ret = do_adjtimex(&txc);
278 return copy_to_user(txc_p, &txc, sizeof(struct timex)) ? -EFAULT : ret; 279 return copy_to_user(txc_p, &txc, sizeof(struct __kernel_timex)) ? -EFAULT : ret;
279} 280}
281#endif
280 282
281#ifdef CONFIG_COMPAT 283#ifdef CONFIG_COMPAT_32BIT_TIME
284int get_old_timex32(struct __kernel_timex *txc, const struct old_timex32 __user *utp)
285{
286 struct old_timex32 tx32;
287
288 memset(txc, 0, sizeof(struct __kernel_timex));
289 if (copy_from_user(&tx32, utp, sizeof(struct old_timex32)))
290 return -EFAULT;
291
292 txc->modes = tx32.modes;
293 txc->offset = tx32.offset;
294 txc->freq = tx32.freq;
295 txc->maxerror = tx32.maxerror;
296 txc->esterror = tx32.esterror;
297 txc->status = tx32.status;
298 txc->constant = tx32.constant;
299 txc->precision = tx32.precision;
300 txc->tolerance = tx32.tolerance;
301 txc->time.tv_sec = tx32.time.tv_sec;
302 txc->time.tv_usec = tx32.time.tv_usec;
303 txc->tick = tx32.tick;
304 txc->ppsfreq = tx32.ppsfreq;
305 txc->jitter = tx32.jitter;
306 txc->shift = tx32.shift;
307 txc->stabil = tx32.stabil;
308 txc->jitcnt = tx32.jitcnt;
309 txc->calcnt = tx32.calcnt;
310 txc->errcnt = tx32.errcnt;
311 txc->stbcnt = tx32.stbcnt;
312
313 return 0;
314}
315
316int put_old_timex32(struct old_timex32 __user *utp, const struct __kernel_timex *txc)
317{
318 struct old_timex32 tx32;
319
320 memset(&tx32, 0, sizeof(struct old_timex32));
321 tx32.modes = txc->modes;
322 tx32.offset = txc->offset;
323 tx32.freq = txc->freq;
324 tx32.maxerror = txc->maxerror;
325 tx32.esterror = txc->esterror;
326 tx32.status = txc->status;
327 tx32.constant = txc->constant;
328 tx32.precision = txc->precision;
329 tx32.tolerance = txc->tolerance;
330 tx32.time.tv_sec = txc->time.tv_sec;
331 tx32.time.tv_usec = txc->time.tv_usec;
332 tx32.tick = txc->tick;
333 tx32.ppsfreq = txc->ppsfreq;
334 tx32.jitter = txc->jitter;
335 tx32.shift = txc->shift;
336 tx32.stabil = txc->stabil;
337 tx32.jitcnt = txc->jitcnt;
338 tx32.calcnt = txc->calcnt;
339 tx32.errcnt = txc->errcnt;
340 tx32.stbcnt = txc->stbcnt;
341 tx32.tai = txc->tai;
342 if (copy_to_user(utp, &tx32, sizeof(struct old_timex32)))
343 return -EFAULT;
344 return 0;
345}
282 346
283COMPAT_SYSCALL_DEFINE1(adjtimex, struct compat_timex __user *, utp) 347SYSCALL_DEFINE1(adjtimex_time32, struct old_timex32 __user *, utp)
284{ 348{
285 struct timex txc; 349 struct __kernel_timex txc;
286 int err, ret; 350 int err, ret;
287 351
288 err = compat_get_timex(&txc, utp); 352 err = get_old_timex32(&txc, utp);
289 if (err) 353 if (err)
290 return err; 354 return err;
291 355
292 ret = do_adjtimex(&txc); 356 ret = do_adjtimex(&txc);
293 357
294 err = compat_put_timex(utp, &txc); 358 err = put_old_timex32(utp, &txc);
295 if (err) 359 if (err)
296 return err; 360 return err;
297 361
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index ac5dbf2cd4a2..f986e1918d12 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -2234,7 +2234,7 @@ ktime_t ktime_get_update_offsets_now(unsigned int *cwsseq, ktime_t *offs_real,
2234/** 2234/**
2235 * timekeeping_validate_timex - Ensures the timex is ok for use in do_adjtimex 2235 * timekeeping_validate_timex - Ensures the timex is ok for use in do_adjtimex
2236 */ 2236 */
2237static int timekeeping_validate_timex(const struct timex *txc) 2237static int timekeeping_validate_timex(const struct __kernel_timex *txc)
2238{ 2238{
2239 if (txc->modes & ADJ_ADJTIME) { 2239 if (txc->modes & ADJ_ADJTIME) {
2240 /* singleshot must not be used with any other mode bits */ 2240 /* singleshot must not be used with any other mode bits */
@@ -2300,7 +2300,7 @@ static int timekeeping_validate_timex(const struct timex *txc)
2300/** 2300/**
2301 * do_adjtimex() - Accessor function to NTP __do_adjtimex function 2301 * do_adjtimex() - Accessor function to NTP __do_adjtimex function
2302 */ 2302 */
2303int do_adjtimex(struct timex *txc) 2303int do_adjtimex(struct __kernel_timex *txc)
2304{ 2304{
2305 struct timekeeper *tk = &tk_core.timekeeper; 2305 struct timekeeper *tk = &tk_core.timekeeper;
2306 unsigned long flags; 2306 unsigned long flags;
diff --git a/net/compat.c b/net/compat.c
index 959d1c51826d..2fef7b9db434 100644
--- a/net/compat.c
+++ b/net/compat.c
@@ -822,7 +822,7 @@ COMPAT_SYSCALL_DEFINE5(recvmmsg_time64, int, fd, struct compat_mmsghdr __user *,
822} 822}
823 823
824#ifdef CONFIG_COMPAT_32BIT_TIME 824#ifdef CONFIG_COMPAT_32BIT_TIME
825COMPAT_SYSCALL_DEFINE5(recvmmsg, int, fd, struct compat_mmsghdr __user *, mmsg, 825COMPAT_SYSCALL_DEFINE5(recvmmsg_time32, int, fd, struct compat_mmsghdr __user *, mmsg,
826 unsigned int, vlen, unsigned int, flags, 826 unsigned int, vlen, unsigned int, flags,
827 struct old_timespec32 __user *, timeout) 827 struct old_timespec32 __user *, timeout)
828{ 828{
diff --git a/scripts/checksyscalls.sh b/scripts/checksyscalls.sh
index cf931003395f..cc70a64fa81f 100755
--- a/scripts/checksyscalls.sh
+++ b/scripts/checksyscalls.sh
@@ -84,6 +84,26 @@ cat << EOF
84#define __IGNORE_statfs64 84#define __IGNORE_statfs64
85#define __IGNORE_llseek 85#define __IGNORE_llseek
86#define __IGNORE_mmap2 86#define __IGNORE_mmap2
87#define __IGNORE_clock_gettime64
88#define __IGNORE_clock_settime64
89#define __IGNORE_clock_adjtime64
90#define __IGNORE_clock_getres_time64
91#define __IGNORE_clock_nanosleep_time64
92#define __IGNORE_timer_gettime64
93#define __IGNORE_timer_settime64
94#define __IGNORE_timerfd_gettime64
95#define __IGNORE_timerfd_settime64
96#define __IGNORE_utimensat_time64
97#define __IGNORE_pselect6_time64
98#define __IGNORE_ppoll_time64
99#define __IGNORE_io_pgetevents_time64
100#define __IGNORE_recvmmsg_time64
101#define __IGNORE_mq_timedsend_time64
102#define __IGNORE_mq_timedreceive_time64
103#define __IGNORE_semtimedop_time64
104#define __IGNORE_rt_sigtimedwait_time64
105#define __IGNORE_futex_time64
106#define __IGNORE_sched_rr_get_interval_time64
87#else 107#else
88#define __IGNORE_sendfile 108#define __IGNORE_sendfile
89#define __IGNORE_ftruncate 109#define __IGNORE_ftruncate
@@ -98,6 +118,26 @@ cat << EOF
98#define __IGNORE_statfs 118#define __IGNORE_statfs
99#define __IGNORE_lseek 119#define __IGNORE_lseek
100#define __IGNORE_mmap 120#define __IGNORE_mmap
121#define __IGNORE_clock_gettime
122#define __IGNORE_clock_settime
123#define __IGNORE_clock_adjtime
124#define __IGNORE_clock_getres
125#define __IGNORE_clock_nanosleep
126#define __IGNORE_timer_gettime
127#define __IGNORE_timer_settime
128#define __IGNORE_timerfd_gettime
129#define __IGNORE_timerfd_settime
130#define __IGNORE_utimensat
131#define __IGNORE_pselect6
132#define __IGNORE_ppoll
133#define __IGNORE_io_pgetevents
134#define __IGNORE_recvmmsg
135#define __IGNORE_mq_timedsend
136#define __IGNORE_mq_timedreceiv
137#define __IGNORE_semtimedop
138#define __IGNORE_rt_sigtimedwait
139#define __IGNORE_futex
140#define __IGNORE_sched_rr_get_interval
101#endif 141#endif
102 142
103/* i386-specific or historical system calls */ 143/* i386-specific or historical system calls */