aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/compat.h73
-rw-r--r--include/linux/syscalls.h57
-rw-r--r--include/uapi/asm-generic/unistd.h44
3 files changed, 83 insertions, 91 deletions
diff --git a/include/linux/compat.h b/include/linux/compat.h
index 657ca6abd855..ebddcb6cfcf8 100644
--- a/include/linux/compat.h
+++ b/include/linux/compat.h
@@ -520,11 +520,6 @@ int __compat_save_altstack(compat_stack_t __user *, unsigned long);
520asmlinkage long compat_sys_io_setup(unsigned nr_reqs, u32 __user *ctx32p); 520asmlinkage long compat_sys_io_setup(unsigned nr_reqs, u32 __user *ctx32p);
521asmlinkage 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,
522 u32 __user *iocb); 522 u32 __user *iocb);
523asmlinkage long compat_sys_io_getevents(compat_aio_context_t ctx_id,
524 compat_long_t min_nr,
525 compat_long_t nr,
526 struct io_event __user *events,
527 struct old_timespec32 __user *timeout);
528asmlinkage long compat_sys_io_pgetevents(compat_aio_context_t ctx_id, 523asmlinkage long compat_sys_io_pgetevents(compat_aio_context_t ctx_id,
529 compat_long_t min_nr, 524 compat_long_t min_nr,
530 compat_long_t nr, 525 compat_long_t nr,
@@ -617,7 +612,7 @@ asmlinkage long compat_sys_sendfile64(int out_fd, int in_fd,
617 compat_loff_t __user *offset, compat_size_t count); 612 compat_loff_t __user *offset, compat_size_t count);
618 613
619/* fs/select.c */ 614/* fs/select.c */
620asmlinkage long compat_sys_pselect6(int n, compat_ulong_t __user *inp, 615asmlinkage long compat_sys_pselect6_time32(int n, compat_ulong_t __user *inp,
621 compat_ulong_t __user *outp, 616 compat_ulong_t __user *outp,
622 compat_ulong_t __user *exp, 617 compat_ulong_t __user *exp,
623 struct old_timespec32 __user *tsp, 618 struct old_timespec32 __user *tsp,
@@ -627,7 +622,7 @@ asmlinkage long compat_sys_pselect6_time64(int n, compat_ulong_t __user *inp,
627 compat_ulong_t __user *exp, 622 compat_ulong_t __user *exp,
628 struct __kernel_timespec __user *tsp, 623 struct __kernel_timespec __user *tsp,
629 void __user *sig); 624 void __user *sig);
630asmlinkage long compat_sys_ppoll(struct pollfd __user *ufds, 625asmlinkage long compat_sys_ppoll_time32(struct pollfd __user *ufds,
631 unsigned int nfds, 626 unsigned int nfds,
632 struct old_timespec32 __user *tsp, 627 struct old_timespec32 __user *tsp,
633 const compat_sigset_t __user *sigmask, 628 const compat_sigset_t __user *sigmask,
@@ -657,19 +652,6 @@ asmlinkage long compat_sys_newfstat(unsigned int fd,
657 652
658/* 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 */
659 654
660/* fs/timerfd.c */
661asmlinkage long compat_sys_timerfd_gettime(int ufd,
662 struct old_itimerspec32 __user *otmr);
663asmlinkage long compat_sys_timerfd_settime(int ufd, int flags,
664 const struct old_itimerspec32 __user *utmr,
665 struct old_itimerspec32 __user *otmr);
666
667/* fs/utimes.c */
668asmlinkage long compat_sys_utimensat(unsigned int dfd,
669 const char __user *filename,
670 struct old_timespec32 __user *t,
671 int flags);
672
673/* kernel/exit.c */ 655/* kernel/exit.c */
674asmlinkage long compat_sys_waitid(int, compat_pid_t, 656asmlinkage long compat_sys_waitid(int, compat_pid_t,
675 struct compat_siginfo __user *, int, 657 struct compat_siginfo __user *, int,
@@ -678,9 +660,6 @@ asmlinkage long compat_sys_waitid(int, compat_pid_t,
678 660
679 661
680/* kernel/futex.c */ 662/* kernel/futex.c */
681asmlinkage long compat_sys_futex(u32 __user *uaddr, int op, u32 val,
682 struct old_timespec32 __user *utime, u32 __user *uaddr2,
683 u32 val3);
684asmlinkage long 663asmlinkage long
685compat_sys_set_robust_list(struct compat_robust_list_head __user *head, 664compat_sys_set_robust_list(struct compat_robust_list_head __user *head,
686 compat_size_t len); 665 compat_size_t len);
@@ -688,10 +667,6 @@ asmlinkage long
688compat_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,
689 compat_size_t __user *len_ptr); 668 compat_size_t __user *len_ptr);
690 669
691/* kernel/hrtimer.c */
692asmlinkage long compat_sys_nanosleep(struct old_timespec32 __user *rqtp,
693 struct old_timespec32 __user *rmtp);
694
695/* kernel/itimer.c */ 670/* kernel/itimer.c */
696asmlinkage long compat_sys_getitimer(int which, 671asmlinkage long compat_sys_getitimer(int which,
697 struct compat_itimerval __user *it); 672 struct compat_itimerval __user *it);
@@ -709,20 +684,6 @@ asmlinkage long compat_sys_kexec_load(compat_ulong_t entry,
709asmlinkage long compat_sys_timer_create(clockid_t which_clock, 684asmlinkage long compat_sys_timer_create(clockid_t which_clock,
710 struct compat_sigevent __user *timer_event_spec, 685 struct compat_sigevent __user *timer_event_spec,
711 timer_t __user *created_timer_id); 686 timer_t __user *created_timer_id);
712asmlinkage long compat_sys_timer_gettime(timer_t timer_id,
713 struct old_itimerspec32 __user *setting);
714asmlinkage long compat_sys_timer_settime(timer_t timer_id, int flags,
715 struct old_itimerspec32 __user *new,
716 struct old_itimerspec32 __user *old);
717asmlinkage long compat_sys_clock_settime(clockid_t which_clock,
718 struct old_timespec32 __user *tp);
719asmlinkage long compat_sys_clock_gettime(clockid_t which_clock,
720 struct old_timespec32 __user *tp);
721asmlinkage long compat_sys_clock_getres(clockid_t which_clock,
722 struct old_timespec32 __user *tp);
723asmlinkage long compat_sys_clock_nanosleep(clockid_t which_clock, int flags,
724 struct old_timespec32 __user *rqtp,
725 struct old_timespec32 __user *rmtp);
726 687
727/* kernel/ptrace.c */ 688/* kernel/ptrace.c */
728asmlinkage 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,
@@ -735,8 +696,6 @@ asmlinkage long compat_sys_sched_setaffinity(compat_pid_t pid,
735asmlinkage long compat_sys_sched_getaffinity(compat_pid_t pid, 696asmlinkage long compat_sys_sched_getaffinity(compat_pid_t pid,
736 unsigned int len, 697 unsigned int len,
737 compat_ulong_t __user *user_mask_ptr); 698 compat_ulong_t __user *user_mask_ptr);
738asmlinkage long compat_sys_sched_rr_get_interval(compat_pid_t pid,
739 struct old_timespec32 __user *interval);
740 699
741/* kernel/signal.c */ 700/* kernel/signal.c */
742asmlinkage long compat_sys_sigaltstack(const compat_stack_t __user *uss_ptr, 701asmlinkage long compat_sys_sigaltstack(const compat_stack_t __user *uss_ptr,
@@ -754,7 +713,7 @@ asmlinkage long compat_sys_rt_sigprocmask(int how, compat_sigset_t __user *set,
754 compat_size_t sigsetsize); 713 compat_size_t sigsetsize);
755asmlinkage long compat_sys_rt_sigpending(compat_sigset_t __user *uset, 714asmlinkage long compat_sys_rt_sigpending(compat_sigset_t __user *uset,
756 compat_size_t sigsetsize); 715 compat_size_t sigsetsize);
757asmlinkage long compat_sys_rt_sigtimedwait(compat_sigset_t __user *uthese, 716asmlinkage long compat_sys_rt_sigtimedwait_time32(compat_sigset_t __user *uthese,
758 struct compat_siginfo __user *uinfo, 717 struct compat_siginfo __user *uinfo,
759 struct old_timespec32 __user *uts, compat_size_t sigsetsize); 718 struct old_timespec32 __user *uts, compat_size_t sigsetsize);
760asmlinkage long compat_sys_rt_sigtimedwait_time64(compat_sigset_t __user *uthese, 719asmlinkage long compat_sys_rt_sigtimedwait_time64(compat_sigset_t __user *uthese,
@@ -777,7 +736,6 @@ asmlinkage long compat_sys_gettimeofday(struct old_timeval32 __user *tv,
777 struct timezone __user *tz); 736 struct timezone __user *tz);
778asmlinkage long compat_sys_settimeofday(struct old_timeval32 __user *tv, 737asmlinkage long compat_sys_settimeofday(struct old_timeval32 __user *tv,
779 struct timezone __user *tz); 738 struct timezone __user *tz);
780asmlinkage long compat_sys_adjtimex(struct old_timex32 __user *utp);
781 739
782/* kernel/timer.c */ 740/* kernel/timer.c */
783asmlinkage long compat_sys_sysinfo(struct compat_sysinfo __user *info); 741asmlinkage long compat_sys_sysinfo(struct compat_sysinfo __user *info);
@@ -786,14 +744,6 @@ asmlinkage long compat_sys_sysinfo(struct compat_sysinfo __user *info);
786asmlinkage long compat_sys_mq_open(const char __user *u_name, 744asmlinkage long compat_sys_mq_open(const char __user *u_name,
787 int oflag, compat_mode_t mode, 745 int oflag, compat_mode_t mode,
788 struct compat_mq_attr __user *u_attr); 746 struct compat_mq_attr __user *u_attr);
789asmlinkage long compat_sys_mq_timedsend(mqd_t mqdes,
790 const char __user *u_msg_ptr,
791 compat_size_t msg_len, unsigned int msg_prio,
792 const struct old_timespec32 __user *u_abs_timeout);
793asmlinkage ssize_t compat_sys_mq_timedreceive(mqd_t mqdes,
794 char __user *u_msg_ptr,
795 compat_size_t msg_len, unsigned int __user *u_msg_prio,
796 const struct old_timespec32 __user *u_abs_timeout);
797asmlinkage long compat_sys_mq_notify(mqd_t mqdes, 747asmlinkage long compat_sys_mq_notify(mqd_t mqdes,
798 const struct compat_sigevent __user *u_notification); 748 const struct compat_sigevent __user *u_notification);
799asmlinkage long compat_sys_mq_getsetattr(mqd_t mqdes, 749asmlinkage long compat_sys_mq_getsetattr(mqd_t mqdes,
@@ -809,8 +759,6 @@ asmlinkage long compat_sys_msgsnd(int msqid, compat_uptr_t msgp,
809 759
810/* ipc/sem.c */ 760/* ipc/sem.c */
811asmlinkage 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);
812asmlinkage long compat_sys_semtimedop(int semid, struct sembuf __user *tsems,
813 unsigned nsems, const struct old_timespec32 __user *timeout);
814 762
815/* ipc/shm.c */ 763/* ipc/shm.c */
816asmlinkage long compat_sys_shmctl(int first, int second, void __user *uptr); 764asmlinkage long compat_sys_shmctl(int first, int second, void __user *uptr);
@@ -868,7 +816,7 @@ asmlinkage long compat_sys_rt_tgsigqueueinfo(compat_pid_t tgid,
868asmlinkage 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,
869 unsigned vlen, unsigned int flags, 817 unsigned vlen, unsigned int flags,
870 struct __kernel_timespec __user *timeout); 818 struct __kernel_timespec __user *timeout);
871asmlinkage long compat_sys_recvmmsg(int fd, struct compat_mmsghdr __user *mmsg, 819asmlinkage long compat_sys_recvmmsg_time32(int fd, struct compat_mmsghdr __user *mmsg,
872 unsigned vlen, unsigned int flags, 820 unsigned vlen, unsigned int flags,
873 struct old_timespec32 __user *timeout); 821 struct old_timespec32 __user *timeout);
874asmlinkage long compat_sys_wait4(compat_pid_t pid, 822asmlinkage long compat_sys_wait4(compat_pid_t pid,
@@ -879,8 +827,6 @@ asmlinkage long compat_sys_fanotify_mark(int, unsigned int, __u32, __u32,
879asmlinkage long compat_sys_open_by_handle_at(int mountdirfd, 827asmlinkage long compat_sys_open_by_handle_at(int mountdirfd,
880 struct file_handle __user *handle, 828 struct file_handle __user *handle,
881 int flags); 829 int flags);
882asmlinkage long compat_sys_clock_adjtime(clockid_t which_clock,
883 struct old_timex32 __user *tp);
884asmlinkage long compat_sys_sendmmsg(int fd, struct compat_mmsghdr __user *mmsg, 830asmlinkage long compat_sys_sendmmsg(int fd, struct compat_mmsghdr __user *mmsg,
885 unsigned vlen, unsigned int flags); 831 unsigned vlen, unsigned int flags);
886asmlinkage ssize_t compat_sys_process_vm_readv(compat_pid_t pid, 832asmlinkage ssize_t compat_sys_process_vm_readv(compat_pid_t pid,
@@ -921,8 +867,6 @@ asmlinkage long compat_sys_pwritev64v2(unsigned long fd,
921/* __ARCH_WANT_SYSCALL_NO_AT */ 867/* __ARCH_WANT_SYSCALL_NO_AT */
922asmlinkage long compat_sys_open(const char __user *filename, int flags, 868asmlinkage long compat_sys_open(const char __user *filename, int flags,
923 umode_t mode); 869 umode_t mode);
924asmlinkage long compat_sys_utimes(const char __user *filename,
925 struct old_timeval32 __user *t);
926 870
927/* __ARCH_WANT_SYSCALL_NO_FLAGS */ 871/* __ARCH_WANT_SYSCALL_NO_FLAGS */
928asmlinkage long compat_sys_signalfd(int ufd, 872asmlinkage long compat_sys_signalfd(int ufd,
@@ -936,12 +880,6 @@ asmlinkage long compat_sys_newlstat(const char __user *filename,
936 struct compat_stat __user *statbuf); 880 struct compat_stat __user *statbuf);
937 881
938/* __ARCH_WANT_SYSCALL_DEPRECATED */ 882/* __ARCH_WANT_SYSCALL_DEPRECATED */
939asmlinkage long compat_sys_time(old_time32_t __user *tloc);
940asmlinkage long compat_sys_utime(const char __user *filename,
941 struct old_utimbuf32 __user *t);
942asmlinkage long compat_sys_futimesat(unsigned int dfd,
943 const char __user *filename,
944 struct old_timeval32 __user *t);
945asmlinkage long compat_sys_select(int n, compat_ulong_t __user *inp, 883asmlinkage long compat_sys_select(int n, compat_ulong_t __user *inp,
946 compat_ulong_t __user *outp, compat_ulong_t __user *exp, 884 compat_ulong_t __user *outp, compat_ulong_t __user *exp,
947 struct old_timeval32 __user *tvp); 885 struct old_timeval32 __user *tvp);
@@ -976,9 +914,6 @@ asmlinkage long compat_sys_sigaction(int sig,
976 struct compat_old_sigaction __user *oact); 914 struct compat_old_sigaction __user *oact);
977#endif 915#endif
978 916
979/* obsolete: kernel/time/time.c */
980asmlinkage long compat_sys_stime(old_time32_t __user *tptr);
981
982/* obsolete: net/socket.c */ 917/* obsolete: net/socket.c */
983asmlinkage long compat_sys_socketcall(int call, u32 __user *args); 918asmlinkage long compat_sys_socketcall(int call, u32 __user *args);
984 919
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 09330d5bda0c..94369f5bd8e5 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -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);
@@ -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);
@@ -696,6 +730,7 @@ asmlinkage long sys_gettimeofday(struct timeval __user *tv,
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 __kernel_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
@@ -871,6 +917,8 @@ asmlinkage long sys_open_by_handle_at(int mountdirfd,
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 __kernel_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/uapi/asm-generic/unistd.h b/include/uapi/asm-generic/unistd.h
index 509484dbfd5d..153b55b94234 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_COMP(__NR_io_getevents, sys_io_getevents, sys_io_getevents_time32)
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(__NR_pselect6, 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(__NR_ppoll, 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
@@ -271,14 +271,14 @@ __SC_COMP(__NR_sync_file_range, sys_sync_file_range, \
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_COMP(__NR_timerfd_settime, sys_timerfd_settime, \
274 compat_sys_timerfd_settime) 274 sys_timerfd_settime32)
275#define __NR_timerfd_gettime 87 275#define __NR_timerfd_gettime 87
276__SC_COMP(__NR_timerfd_gettime, sys_timerfd_gettime, \ 276__SC_COMP(__NR_timerfd_gettime, sys_timerfd_gettime, \
277 compat_sys_timerfd_gettime) 277 sys_timerfd_gettime32)
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_COMP(__NR_utimensat, sys_utimensat, sys_utimensat_time32)
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_COMP(__NR_futex, sys_futex, sys_futex_time32)
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_COMP(__NR_nanosleep, sys_nanosleep, sys_nanosleep_time32)
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_COMP(__NR_timer_gettime, sys_timer_gettime, sys_timer_gettime32)
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_COMP(__NR_timer_settime, sys_timer_settime, sys_timer_settime32)
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_COMP(__NR_clock_settime, sys_clock_settime, sys_clock_settime32)
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_COMP(__NR_clock_gettime, sys_clock_gettime, sys_clock_gettime32)
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_COMP(__NR_clock_getres, sys_clock_getres, sys_clock_getres_time32)
358#define __NR_clock_nanosleep 115 358#define __NR_clock_nanosleep 115
359__SC_COMP(__NR_clock_nanosleep, sys_clock_nanosleep, \ 359__SC_COMP(__NR_clock_nanosleep, sys_clock_nanosleep, \
360 compat_sys_clock_nanosleep) 360 sys_clock_nanosleep_time32)
361 361
362/* kernel/printk.c */ 362/* kernel/printk.c */
363#define __NR_syslog 116 363#define __NR_syslog 116
@@ -390,7 +390,7 @@ __SYSCALL(__NR_sched_get_priority_max, sys_sched_get_priority_max)
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_COMP(__NR_sched_rr_get_interval, sys_sched_rr_get_interval, \
393 compat_sys_sched_rr_get_interval) 393 sys_sched_rr_get_interval_time32)
394 394
395/* kernel/signal.c */ 395/* kernel/signal.c */
396#define __NR_restart_syscall 128 396#define __NR_restart_syscall 128
@@ -413,7 +413,7 @@ __SC_COMP(__NR_rt_sigprocmask, sys_rt_sigprocmask, compat_sys_rt_sigprocmask)
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(__NR_rt_sigtimedwait, sys_rt_sigtimedwait, \
416 compat_sys_rt_sigtimedwait) 416 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_COMP(__NR_adjtimex, sys_adjtimex, sys_adjtimex_time32)
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_COMP(__NR_mq_timedsend, sys_mq_timedsend, sys_mq_timedsend_time32)
516#define __NR_mq_timedreceive 183 516#define __NR_mq_timedreceive 183
517__SC_COMP(__NR_mq_timedreceive, sys_mq_timedreceive, \ 517__SC_COMP(__NR_mq_timedreceive, sys_mq_timedreceive, \
518 compat_sys_mq_timedreceive) 518 sys_mq_timedreceive_time32)
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(__NR_recvmmsg, 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_COMP(__NR_clock_adjtime, sys_clock_adjtime, sys_clock_adjtime32)
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