summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Lutomirski <luto@kernel.org>2015-07-15 00:24:24 +0200
committerIngo Molnar <mingo@kernel.org>2015-07-21 10:11:04 +0200
commit9dea5dc921b5f4045a18c63eb92e84dc274d17eb (patch)
treeb8bc8881b17c04173a71455b5dec1b4a454659df
parentx86/entry/vm86: Move userspace accesses to do_sys_vm86() (diff)
downloadlinux-9dea5dc921b5f4045a18c63eb92e84dc274d17eb.tar.xz
linux-9dea5dc921b5f4045a18c63eb92e84dc274d17eb.zip
x86/entry/syscalls: Wire up 32-bit direct socket calls
On x86_64, there's no socketcall syscall; instead all of the socket calls are real syscalls. For 32-bit programs, we're stuck offering the socketcall syscall, but it would be nice to expose the direct calls as well. This will enable seccomp to filter socket calls (for new userspace only, but that's fine for some applications) and it will provide a tiny performance boost. Signed-off-by: Andy Lutomirski <luto@kernel.org> Cc: Alexander Larsson <alexl@redhat.com> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Cosimo Cecchi <cosimo@endlessm.com> Cc: Dan Nicholson <nicholson@endlessm.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com> Cc: libc-alpha <libc-alpha@sourceware.org> Link: http://lkml.kernel.org/r/cb5138299d37d5800e2d135b01a7667fa6115854.1436912629.git.luto@kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--arch/x86/entry/syscalls/syscall_32.tbl15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/x86/entry/syscalls/syscall_32.tbl b/arch/x86/entry/syscalls/syscall_32.tbl
index ef8187f9d28d..25e3cf1cd8fd 100644
--- a/arch/x86/entry/syscalls/syscall_32.tbl
+++ b/arch/x86/entry/syscalls/syscall_32.tbl
@@ -365,3 +365,18 @@
356 i386 memfd_create sys_memfd_create
357 i386 bpf sys_bpf
358 i386 execveat sys_execveat stub32_execveat
+359 i386 socket sys_socket
+360 i386 socketpair sys_socketpair
+361 i386 bind sys_bind
+362 i386 connect sys_connect
+363 i386 listen sys_listen
+364 i386 accept4 sys_accept4
+365 i386 getsockopt sys_getsockopt compat_sys_getsockopt
+366 i386 setsockopt sys_setsockopt compat_sys_setsockopt
+367 i386 getsockname sys_getsockname
+368 i386 getpeername sys_getpeername
+369 i386 sendto sys_sendto
+370 i386 sendmsg sys_sendmsg compat_sys_sendmsg
+371 i386 recvfrom sys_recvfrom compat_sys_recvfrom
+372 i386 recvmsg sys_recvmsg compat_sys_recvmsg
+373 i386 shutdown sys_shutdown