sparc: Hook up new fanotify and prlimit64 syscalls.
The only tricky bit is the compat version of fanotify_mark, which which on 32-bit the 64-bit mark argument is passed in as "high32", "low32". Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -397,8 +397,11 @@
|
|||||||
#define __NR_rt_tgsigqueueinfo 326
|
#define __NR_rt_tgsigqueueinfo 326
|
||||||
#define __NR_perf_event_open 327
|
#define __NR_perf_event_open 327
|
||||||
#define __NR_recvmmsg 328
|
#define __NR_recvmmsg 328
|
||||||
|
#define __NR_fanotify_init 329
|
||||||
|
#define __NR_fanotify_mark 330
|
||||||
|
#define __NR_prlimit64 331
|
||||||
|
|
||||||
#define NR_syscalls 329
|
#define NR_syscalls 332
|
||||||
|
|
||||||
#ifdef __32bit_syscall_numbers__
|
#ifdef __32bit_syscall_numbers__
|
||||||
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
||||||
|
@@ -330,6 +330,15 @@ do_sys_accept4: /* sys_accept4(int, struct sockaddr *, int *, int) */
|
|||||||
nop
|
nop
|
||||||
nop
|
nop
|
||||||
|
|
||||||
|
.globl sys32_fanotify_mark
|
||||||
|
sys32_fanotify_mark:
|
||||||
|
sethi %hi(sys_fanotify_mark), %g1
|
||||||
|
sllx %o2, 32, %o2
|
||||||
|
or %o2, %o3, %o2
|
||||||
|
mov %o4, %o3
|
||||||
|
jmpl %g1 + %lo(sys_fanotify_mark), %g0
|
||||||
|
mov %o5, %o4
|
||||||
|
|
||||||
.section __ex_table,"a"
|
.section __ex_table,"a"
|
||||||
.align 4
|
.align 4
|
||||||
.word 1b, __retl_efault, 2b, __retl_efault
|
.word 1b, __retl_efault, 2b, __retl_efault
|
||||||
|
@@ -82,5 +82,6 @@ sys_call_table:
|
|||||||
/*310*/ .long sys_utimensat, sys_signalfd, sys_timerfd_create, sys_eventfd, sys_fallocate
|
/*310*/ .long sys_utimensat, sys_signalfd, sys_timerfd_create, sys_eventfd, sys_fallocate
|
||||||
/*315*/ .long sys_timerfd_settime, sys_timerfd_gettime, sys_signalfd4, sys_eventfd2, sys_epoll_create1
|
/*315*/ .long sys_timerfd_settime, sys_timerfd_gettime, sys_signalfd4, sys_eventfd2, sys_epoll_create1
|
||||||
/*320*/ .long sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
/*320*/ .long sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
||||||
/*325*/ .long sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg
|
/*325*/ .long sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init
|
||||||
|
/*330*/ .long sys_fanotify_mark, sys_prlimit64
|
||||||
|
|
||||||
|
@@ -83,7 +83,8 @@ sys_call_table32:
|
|||||||
/*310*/ .word compat_sys_utimensat, compat_sys_signalfd, sys_timerfd_create, sys_eventfd, compat_sys_fallocate
|
/*310*/ .word compat_sys_utimensat, compat_sys_signalfd, sys_timerfd_create, sys_eventfd, compat_sys_fallocate
|
||||||
.word compat_sys_timerfd_settime, compat_sys_timerfd_gettime, compat_sys_signalfd4, sys_eventfd2, sys_epoll_create1
|
.word compat_sys_timerfd_settime, compat_sys_timerfd_gettime, compat_sys_signalfd4, sys_eventfd2, sys_epoll_create1
|
||||||
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, compat_sys_preadv
|
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, compat_sys_preadv
|
||||||
.word compat_sys_pwritev, compat_sys_rt_tgsigqueueinfo, sys_perf_event_open, compat_sys_recvmmsg
|
.word compat_sys_pwritev, compat_sys_rt_tgsigqueueinfo, sys_perf_event_open, compat_sys_recvmmsg, sys_fanotify_init
|
||||||
|
/*330*/ .word sys32_fanotify_mark, sys_prlimit64
|
||||||
|
|
||||||
#endif /* CONFIG_COMPAT */
|
#endif /* CONFIG_COMPAT */
|
||||||
|
|
||||||
@@ -158,4 +159,5 @@ sys_call_table:
|
|||||||
/*310*/ .word sys_utimensat, sys_signalfd, sys_timerfd_create, sys_eventfd, sys_fallocate
|
/*310*/ .word sys_utimensat, sys_signalfd, sys_timerfd_create, sys_eventfd, sys_fallocate
|
||||||
.word sys_timerfd_settime, sys_timerfd_gettime, sys_signalfd4, sys_eventfd2, sys_epoll_create1
|
.word sys_timerfd_settime, sys_timerfd_gettime, sys_signalfd4, sys_eventfd2, sys_epoll_create1
|
||||||
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
||||||
.word sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg
|
.word sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init
|
||||||
|
/*330*/ .word sys_fanotify_mark, sys_prlimit64
|
||||||
|
Reference in New Issue
Block a user