sparc64: wire up accept4()
This adds the sparc syscall hookups. Signed-off-by: David S. Miller <davem@davemloft.net> Cc: Ulrich Drepper <drepper@redhat.com> Cc: Michael Kerrisk <mtk.manpages@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
de11defebf
commit
f8b2256e9c
@ -338,8 +338,9 @@
|
|||||||
#define __NR_dup3 320
|
#define __NR_dup3 320
|
||||||
#define __NR_pipe2 321
|
#define __NR_pipe2 321
|
||||||
#define __NR_inotify_init1 322
|
#define __NR_inotify_init1 322
|
||||||
|
#define __NR_accept4 323
|
||||||
|
|
||||||
#define NR_SYSCALLS 323
|
#define NR_SYSCALLS 324
|
||||||
|
|
||||||
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
||||||
* it never had the plain ones and there is no value to adding those
|
* it never had the plain ones and there is no value to adding those
|
||||||
|
@ -340,8 +340,9 @@
|
|||||||
#define __NR_dup3 320
|
#define __NR_dup3 320
|
||||||
#define __NR_pipe2 321
|
#define __NR_pipe2 321
|
||||||
#define __NR_inotify_init1 322
|
#define __NR_inotify_init1 322
|
||||||
|
#define __NR_accept4 323
|
||||||
|
|
||||||
#define NR_SYSCALLS 323
|
#define NR_SYSCALLS 324
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
|
@ -81,4 +81,4 @@ sys_call_table:
|
|||||||
/*305*/ .long sys_set_mempolicy, sys_kexec_load, sys_move_pages, sys_getcpu, sys_epoll_pwait
|
/*305*/ .long sys_set_mempolicy, sys_kexec_load, sys_move_pages, sys_getcpu, sys_epoll_pwait
|
||||||
/*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
|
/*320*/ .long sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4
|
||||||
|
@ -150,7 +150,7 @@ sys32_mmap2:
|
|||||||
sys32_socketcall: /* %o0=call, %o1=args */
|
sys32_socketcall: /* %o0=call, %o1=args */
|
||||||
cmp %o0, 1
|
cmp %o0, 1
|
||||||
bl,pn %xcc, do_einval
|
bl,pn %xcc, do_einval
|
||||||
cmp %o0, 17
|
cmp %o0, 18
|
||||||
bg,pn %xcc, do_einval
|
bg,pn %xcc, do_einval
|
||||||
sub %o0, 1, %o0
|
sub %o0, 1, %o0
|
||||||
sllx %o0, 5, %o0
|
sllx %o0, 5, %o0
|
||||||
@ -319,6 +319,15 @@ do_sys_recvmsg: /* compat_sys_recvmsg(int, struct compat_msghdr *, unsigned int)
|
|||||||
nop
|
nop
|
||||||
nop
|
nop
|
||||||
nop
|
nop
|
||||||
|
do_sys_accept4: /* sys_accept4(int, struct sockaddr *, int *, int) */
|
||||||
|
63: ldswa [%o1 + 0x0] %asi, %o0
|
||||||
|
sethi %hi(sys_accept4), %g1
|
||||||
|
64: lduwa [%o1 + 0x8] %asi, %o2
|
||||||
|
65: ldswa [%o1 + 0xc] %asi, %o3
|
||||||
|
jmpl %g1 + %lo(sys_accept4), %g0
|
||||||
|
66: lduwa [%o1 + 0x4] %asi, %o1
|
||||||
|
nop
|
||||||
|
nop
|
||||||
|
|
||||||
.section __ex_table,"a"
|
.section __ex_table,"a"
|
||||||
.align 4
|
.align 4
|
||||||
@ -353,4 +362,6 @@ do_sys_recvmsg: /* compat_sys_recvmsg(int, struct compat_msghdr *, unsigned int)
|
|||||||
.word 57b, __retl_efault, 58b, __retl_efault
|
.word 57b, __retl_efault, 58b, __retl_efault
|
||||||
.word 59b, __retl_efault, 60b, __retl_efault
|
.word 59b, __retl_efault, 60b, __retl_efault
|
||||||
.word 61b, __retl_efault, 62b, __retl_efault
|
.word 61b, __retl_efault, 62b, __retl_efault
|
||||||
|
.word 63b, __retl_efault, 64b, __retl_efault
|
||||||
|
.word 65b, __retl_efault, 66b, __retl_efault
|
||||||
.previous
|
.previous
|
||||||
|
@ -82,7 +82,7 @@ sys_call_table32:
|
|||||||
.word compat_sys_set_mempolicy, compat_sys_kexec_load, compat_sys_move_pages, sys_getcpu, compat_sys_epoll_pwait
|
.word compat_sys_set_mempolicy, compat_sys_kexec_load, compat_sys_move_pages, sys_getcpu, compat_sys_epoll_pwait
|
||||||
/*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
|
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4
|
||||||
|
|
||||||
#endif /* CONFIG_COMPAT */
|
#endif /* CONFIG_COMPAT */
|
||||||
|
|
||||||
@ -156,4 +156,4 @@ sys_call_table:
|
|||||||
.word sys_set_mempolicy, sys_kexec_load, sys_move_pages, sys_getcpu, sys_epoll_pwait
|
.word sys_set_mempolicy, sys_kexec_load, sys_move_pages, sys_getcpu, sys_epoll_pwait
|
||||||
/*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
|
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4
|
||||||
|
Loading…
Reference in New Issue
Block a user