summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2015-11-09 13:15:39 +0100
committerPaul Moore <pmoore@redhat.com>2015-11-11 12:42:20 -0500
commitd2ca11b7cdddbba3782b1e306ceacf19e898faee (patch)
tree0499440a94d280d5f3f3da6a6a5eadcacb059eb7
parent32a0fa603939b06b20c38919e5eda2229c8d9e4c (diff)
downloadlibseccomp-d2ca11b7cdddbba3782b1e306ceacf19e898faee.tar.gz
arch: update s390/s390x system call tables
s390 and s390x gained quite a few new system calls: - numa related system calls - the separated socket system calls - two more s390 specific pci mmio system calls All architectures got the new membarrier and userfaultfd system calls. This patch updates the s390 specific system call tables and updates other architectures where needed. Also remove some extra whitespace from the s390 specific system call tables. Both 'make check' and './regression -T live' still work for s390 and s390x after this update. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Paul Moore <pmoore@redhat.com>
-rw-r--r--include/seccomp.h.in20
-rw-r--r--src/arch-aarch64-syscalls.c4
-rw-r--r--src/arch-arm-syscalls.c4
-rw-r--r--src/arch-mips-syscalls.c4
-rw-r--r--src/arch-mips64-syscalls.c4
-rw-r--r--src/arch-mips64n32-syscalls.c4
-rw-r--r--src/arch-ppc-syscalls.c4
-rw-r--r--src/arch-ppc64-syscalls.c4
-rw-r--r--src/arch-s390-syscalls.c68
-rw-r--r--src/arch-s390x-syscalls.c66
-rw-r--r--src/arch-x32-syscalls.c4
-rw-r--r--src/arch-x86-syscalls.c4
-rw-r--r--src/arch-x86_64-syscalls.c4
13 files changed, 131 insertions, 63 deletions
diff --git a/include/seccomp.h.in b/include/seccomp.h.in
index adab19a..4b1cd2e 100644
--- a/include/seccomp.h.in
+++ b/include/seccomp.h.in
@@ -1557,6 +1557,26 @@ int seccomp_export_bpf(const scmp_filter_ctx ctx, int fd);
#define __NR_s390_runtime_instr __PNR_s390_runtime_instr
#endif /* __NR_s390_runtime_instr */
+#define __PNR_s390_pci_mmio_read -10197
+#ifndef __NR_s390_pci_mmio_read
+#define __NR_s390_pci_mmio_read __PNR_s390_pci_mmio_read
+#endif /* __NR_s390_pci_mmio_read */
+
+#define __PNR_s390_pci_mmio_write -10198
+#ifndef __NR_s390_pci_mmio_write
+#define __NR_s390_pci_mmio_write __PNR_s390_pci_mmio_write
+#endif /* __NR_s390_pci_mmio_write */
+
+#define __PNR_membarrier -10199
+#ifndef __NR_membarrier
+#define __NR_membarrier __PNR_membarrier
+#endif /* __NR_membarrier */
+
+#define __PNR_userfaultfd -10200
+#ifndef __NR_userfaultfd
+#define __NR_userfaultfd __PNR_userfaultfd
+#endif /* __NR_userfaultfd */
+
#ifdef __cplusplus
}
#endif
diff --git a/src/arch-aarch64-syscalls.c b/src/arch-aarch64-syscalls.c
index 9ac1dd0..7d7bf4f 100644
--- a/src/arch-aarch64-syscalls.c
+++ b/src/arch-aarch64-syscalls.c
@@ -196,6 +196,7 @@ const struct arch_syscall_def aarch64_syscall_table[] = { \
{ "lstat64", __PNR_lstat64 },
{ "madvise", 233 },
{ "mbind", 235 },
+ { "membarrier", 283 },
{ "memfd_create", 279 },
{ "migrate_pages", 238 },
{ "mincore", 232 },
@@ -296,6 +297,8 @@ const struct arch_syscall_def aarch64_syscall_table[] = { \
{ "rt_sigtimedwait", 137 },
{ "rt_tgsigqueueinfo", 240 },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", 125 },
{ "sched_get_priority_min", 126 },
@@ -430,6 +433,7 @@ const struct arch_syscall_def aarch64_syscall_table[] = { \
{ "uselib", __PNR_uselib },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", 282 },
{ "ustat", __PNR_ustat },
{ "utime", __PNR_utime },
{ "utimensat", 88 },
diff --git a/src/arch-arm-syscalls.c b/src/arch-arm-syscalls.c
index b82b274..e64f174 100644
--- a/src/arch-arm-syscalls.c
+++ b/src/arch-arm-syscalls.c
@@ -208,6 +208,7 @@ const struct arch_syscall_def arm_syscall_table[] = { \
{ "lstat64", (__SCMP_NR_BASE + 196) },
{ "madvise", (__SCMP_NR_BASE + 220) },
{ "mbind", (__SCMP_NR_BASE + 319) },
+ { "membarrier", (__SCMP_NR_BASE + 389) },
{ "memfd_create", (__SCMP_NR_BASE + 385) },
{ "migrate_pages", __PNR_migrate_pages },
{ "mincore", (__SCMP_NR_BASE + 219) },
@@ -308,6 +309,8 @@ const struct arch_syscall_def arm_syscall_table[] = { \
{ "rt_sigtimedwait", (__SCMP_NR_BASE + 177) },
{ "rt_tgsigqueueinfo", (__SCMP_NR_BASE + 363) },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", (__SCMP_NR_BASE + 159) },
{ "sched_get_priority_min", (__SCMP_NR_BASE + 160) },
@@ -442,6 +445,7 @@ const struct arch_syscall_def arm_syscall_table[] = { \
{ "uselib", (__SCMP_NR_BASE + 86) },
{ "usr26", (__SCMP_NR_BASE + (__SCMP_ARM_NR_BASE + 3)) },
{ "usr32", (__SCMP_NR_BASE + (__SCMP_ARM_NR_BASE + 4)) },
+ { "userfaultfd", (__SCMP_NR_BASE + 388) },
{ "ustat", (__SCMP_NR_BASE + 62) },
{ "utime", __PNR_utime },
{ "utimensat", (__SCMP_NR_BASE + 348) },
diff --git a/src/arch-mips-syscalls.c b/src/arch-mips-syscalls.c
index c6d96d2..af098c8 100644
--- a/src/arch-mips-syscalls.c
+++ b/src/arch-mips-syscalls.c
@@ -200,6 +200,7 @@ const struct arch_syscall_def mips_syscall_table[] = { \
{ "lstat64", (__SCMP_NR_BASE + 214) },
{ "madvise", (__SCMP_NR_BASE + 218) },
{ "mbind", (__SCMP_NR_BASE + 268) },
+ { "membarrier", (__SCMP_NR_BASE + 358) },
{ "memfd_create", (__SCMP_NR_BASE + 354) },
{ "migrate_pages", (__SCMP_NR_BASE + 287) },
{ "mincore", (__SCMP_NR_BASE + 217) },
@@ -300,6 +301,8 @@ const struct arch_syscall_def mips_syscall_table[] = { \
{ "rt_sigtimedwait", (__SCMP_NR_BASE + 197) },
{ "rt_tgsigqueueinfo", (__SCMP_NR_BASE + 332) },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", (__SCMP_NR_BASE + 163) },
{ "sched_get_priority_min", (__SCMP_NR_BASE + 164) },
@@ -434,6 +437,7 @@ const struct arch_syscall_def mips_syscall_table[] = { \
{ "uselib", (__SCMP_NR_BASE + 86) },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", (__SCMP_NR_BASE + 357) },
{ "ustat", (__SCMP_NR_BASE + 62) },
{ "utime", (__SCMP_NR_BASE + 30) },
{ "utimensat", (__SCMP_NR_BASE + 316) },
diff --git a/src/arch-mips64-syscalls.c b/src/arch-mips64-syscalls.c
index bd292da..ba7bc8c 100644
--- a/src/arch-mips64-syscalls.c
+++ b/src/arch-mips64-syscalls.c
@@ -200,6 +200,7 @@ const struct arch_syscall_def mips64_syscall_table[] = { \
{ "lstat64", __PNR_lstat64 },
{ "madvise", (__SCMP_NR_BASE + 27) },
{ "mbind", (__SCMP_NR_BASE + 227) },
+ { "membarrier", (__SCMP_NR_BASE + 318) },
{ "memfd_create", (__SCMP_NR_BASE + 314) },
{ "migrate_pages", (__SCMP_NR_BASE + 246) },
{ "mincore", (__SCMP_NR_BASE + 26) },
@@ -300,6 +301,8 @@ const struct arch_syscall_def mips64_syscall_table[] = { \
{ "rt_sigtimedwait", (__SCMP_NR_BASE + 126) },
{ "rt_tgsigqueueinfo", (__SCMP_NR_BASE + 291) },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", (__SCMP_NR_BASE + 143) },
{ "sched_get_priority_min", (__SCMP_NR_BASE + 144) },
@@ -434,6 +437,7 @@ const struct arch_syscall_def mips64_syscall_table[] = { \
{ "uselib", __PNR_uselib },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", (__SCMP_NR_BASE + 317) },
{ "ustat", (__SCMP_NR_BASE + 133) },
{ "utime", (__SCMP_NR_BASE + 130) },
{ "utimensat", (__SCMP_NR_BASE + 275) },
diff --git a/src/arch-mips64n32-syscalls.c b/src/arch-mips64n32-syscalls.c
index b4195c3..db88ab5 100644
--- a/src/arch-mips64n32-syscalls.c
+++ b/src/arch-mips64n32-syscalls.c
@@ -200,6 +200,7 @@ const struct arch_syscall_def mips64n32_syscall_table[] = { \
{ "lstat64", __PNR_lstat64 },
{ "madvise", (__SCMP_NR_BASE + 27) },
{ "mbind", (__SCMP_NR_BASE + 231) },
+ { "membarrier", (__SCMP_NR_BASE + 322) },
{ "memfd_create", (__SCMP_NR_BASE + 318) },
{ "migrate_pages", (__SCMP_NR_BASE + 250) },
{ "mincore", (__SCMP_NR_BASE + 26) },
@@ -300,6 +301,8 @@ const struct arch_syscall_def mips64n32_syscall_table[] = { \
{ "rt_sigtimedwait", (__SCMP_NR_BASE + 126) },
{ "rt_tgsigqueueinfo", (__SCMP_NR_BASE + 295) },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", (__SCMP_NR_BASE + 143) },
{ "sched_get_priority_min", (__SCMP_NR_BASE + 144) },
@@ -434,6 +437,7 @@ const struct arch_syscall_def mips64n32_syscall_table[] = { \
{ "uselib", __PNR_uselib },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", (__SCMP_NR_BASE + 321) },
{ "ustat", (__SCMP_NR_BASE + 133) },
{ "utime", (__SCMP_NR_BASE + 130) },
{ "utimensat", (__SCMP_NR_BASE + 279) },
diff --git a/src/arch-ppc-syscalls.c b/src/arch-ppc-syscalls.c
index 8ddb750..4d6bff7 100644
--- a/src/arch-ppc-syscalls.c
+++ b/src/arch-ppc-syscalls.c
@@ -197,6 +197,7 @@ const struct arch_syscall_def ppc_syscall_table[] = { \
{ "lstat64", 196 },
{ "madvise", 205 },
{ "mbind", 259 },
+ { "membarrier", 365 },
{ "memfd_create", 360 },
{ "migrate_pages", 258 },
{ "mincore", 206 },
@@ -297,6 +298,8 @@ const struct arch_syscall_def ppc_syscall_table[] = { \
{ "rt_sigtimedwait", 176 },
{ "rt_tgsigqueueinfo", 322 },
{ "rtas", 255 },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", 159 },
{ "sched_get_priority_min", 160 },
@@ -431,6 +434,7 @@ const struct arch_syscall_def ppc_syscall_table[] = { \
{ "uselib", 86 },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", 364 },
{ "ustat", 62 },
{ "utime", 30 },
{ "utimensat", 304 },
diff --git a/src/arch-ppc64-syscalls.c b/src/arch-ppc64-syscalls.c
index d9060f4..ba26dc5 100644
--- a/src/arch-ppc64-syscalls.c
+++ b/src/arch-ppc64-syscalls.c
@@ -197,6 +197,7 @@ const struct arch_syscall_def ppc64_syscall_table[] = { \
{ "lstat64", __PNR_lstat64 },
{ "madvise", 205 },
{ "mbind", 259 },
+ { "membarrier", 365 },
{ "memfd_create", 360 },
{ "migrate_pages", 258 },
{ "mincore", 206 },
@@ -297,6 +298,8 @@ const struct arch_syscall_def ppc64_syscall_table[] = { \
{ "rt_sigtimedwait", 176 },
{ "rt_tgsigqueueinfo", 322 },
{ "rtas", 255 },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", 159 },
{ "sched_get_priority_min", 160 },
@@ -431,6 +434,7 @@ const struct arch_syscall_def ppc64_syscall_table[] = { \
{ "uselib", 86 },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", 364 },
{ "ustat", 62 },
{ "utime", 30 },
{ "utimensat", 304 },
diff --git a/src/arch-s390-syscalls.c b/src/arch-s390-syscalls.c
index 4da63ed..9b24abe 100644
--- a/src/arch-s390-syscalls.c
+++ b/src/arch-s390-syscalls.c
@@ -10,13 +10,13 @@
#include "arch.h"
#include "arch-s390.h"
-/* NOTE: based on Linux 4.2-rc5 */
+/* NOTE: based on Linux 4.3 */
const struct arch_syscall_def s390_syscall_table[] = { \
{ "_llseek", 140 },
{ "_newselect", 142 },
{ "_sysctl", 149 },
{ "accept", __PNR_accept },
- { "accept4", __PNR_accept4 },
+ { "accept4", 364 },
{ "access", 33 },
{ "acct", 51 },
{ "add_key", 278 },
@@ -27,7 +27,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "arm_sync_file_range", __PNR_arm_sync_file_range },
{ "arch_prctl", __PNR_arch_prctl },
{ "bdflush", 134 },
- { "bind", __PNR_bind },
+ { "bind", 361 },
{ "bpf", 351 },
{ "break", __PNR_break },
{ "breakpoint", __PNR_breakpoint },
@@ -48,7 +48,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "clock_settime", 259 },
{ "clone", 120 },
{ "close", 6 },
- { "connect", __PNR_connect },
+ { "connect", 362 },
{ "creat", 8 },
{ "create_module", 127 },
{ "delete_module", 129 },
@@ -102,8 +102,8 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "futex", 238 },
{ "futimesat", 292 },
{ "get_kernel_syms", 130 },
- { "get_mempolicy", __PNR_get_mempolicy },
- { "get_robust_list" , 305 },
+ { "get_mempolicy", 269 },
+ { "get_robust_list", 305 },
{ "get_thread_area", __PNR_get_thread_area },
{ "getcpu", 311 },
{ "getcwd", 183 },
@@ -118,7 +118,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "getgroups", 80 },
{ "getgroups32", 205 },
{ "getitimer", 105 },
- { "getpeername", __PNR_getpeername },
+ { "getpeername", 368 },
{ "getpgid", 132 },
{ "getpgrp", 65 },
{ "getpid", 20 },
@@ -133,8 +133,8 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "getrlimit", 76 },
{ "getrusage", 77 },
{ "getsid", 147 },
- { "getsockname", __PNR_getsockname },
- { "getsockopt", __PNR_getsockopt },
+ { "getsockname", 367 },
+ { "getsockopt", 365 },
{ "gettid", 236 },
{ "gettimeofday", 78 },
{ "getuid", 24 },
@@ -143,10 +143,10 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "gtty", __PNR_gtty },
{ "idle", 112 },
{ "init_module", 128 },
- { "inotify_add_watch" , 285 },
+ { "inotify_add_watch", 285 },
{ "inotify_init", 284 },
{ "inotify_init1", 324 },
- { "inotify_rm_watch" , 286 },
+ { "inotify_rm_watch", 286 },
{ "io_cancel", 247 },
{ "io_destroy", 244 },
{ "io_getevents", 245 },
@@ -168,7 +168,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "lgetxattr", 228 },
{ "link", 9 },
{ "linkat", 296 },
- { "listen", __PNR_listen },
+ { "listen", 363 },
{ "listxattr", 230 },
{ "llistxattr", 231 },
{ "lock", __PNR_lock },
@@ -179,9 +179,10 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "lstat", 107 },
{ "lstat64", 196 },
{ "madvise", 219 },
- { "mbind", __PNR_mbind },
+ { "mbind", 268 },
+ { "membarrier", 356 },
{ "memfd_create", 350 },
- { "migrate_pages", __PNR_migrate_pages},
+ { "migrate_pages", 287 },
{ "mincore", 218 },
{ "mkdir", 39 },
{ "mkdirat", 289 },
@@ -193,13 +194,13 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "mmap2", 192 },
{ "modify_ldt", __PNR_modify_ldt },
{ "mount", 21 },
- { "move_pages", __PNR_move_pages},
+ { "move_pages", 310 },
{ "mprotect", 125 },
{ "mpx", __PNR_mpx },
{ "mq_getsetattr", 276 },
{ "mq_notify", 275 },
{ "mq_open", 271 },
- { "mq_timedreceive" , 274 },
+ { "mq_timedreceive", 274 },
{ "mq_timedsend", 273 },
{ "mq_unlink", 272 },
{ "mremap", 163 },
@@ -260,9 +261,9 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "readv", 145 },
{ "reboot", 88 },
{ "recv", __PNR_recv },
- { "recvfrom", __PNR_recvfrom },
- { "recvmmsg", __PNR_recvmmsg },
- { "recvmsg", __PNR_recvmsg },
+ { "recvfrom", 371 },
+ { "recvmmsg", 357 },
+ { "recvmsg", 372 },
{ "remap_file_pages", 267 },
{ "removexattr", 233 },
{ "rename", 38 },
@@ -280,15 +281,17 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "rt_sigtimedwait", 177 },
{ "rt_tgsigqueueinfo", 330 },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", 353 },
+ { "s390_pci_mmio_write", 352 },
{ "s390_runtime_instr", 342 },
{ "sched_get_priority_max", 159 },
{ "sched_get_priority_min", 160 },
- { "sched_getaffinity" , 240 },
+ { "sched_getaffinity", 240 },
{ "sched_getattr", 346 },
{ "sched_getparam", 155 },
{ "sched_getscheduler", 157 },
{ "sched_rr_get_interval", 161 },
- { "sched_setaffinity" , 239 },
+ { "sched_setaffinity", 239 },
{ "sched_setattr", 345 },
{ "sched_setparam", 154 },
{ "sched_setscheduler", 156 },
@@ -303,11 +306,11 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "send", __PNR_send },
{ "sendfile", 187 },
{ "sendfile64", 223 },
- { "sendmmsg", __PNR_sendmmsg },
- { "sendmsg", __PNR_sendmsg },
- { "sendto", __PNR_sendto },
- { "set_mempolicy", __PNR_set_mempolicy },
- { "set_robust_list" , 304 },
+ { "sendmmsg", 358 },
+ { "sendmsg", 370 },
+ { "sendto", 369 },
+ { "set_mempolicy", 270 },
+ { "set_robust_list", 304 },
{ "set_thread_area", __PNR_set_thread_area },
{ "set_tid_address", 252 },
{ "set_tls", __PNR_set_tls },
@@ -335,7 +338,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "setreuid32", 203 },
{ "setrlimit", 75 },
{ "setsid", 66 },
- { "setsockopt", __PNR_setsockopt },
+ { "setsockopt", 366 },
{ "settimeofday", 79 },
{ "setuid", 23 },
{ "setuid32", 213 },
@@ -345,7 +348,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "shmctl", __PNR_shmctl },
{ "shmdt", __PNR_shmdt },
{ "shmget", __PNR_shmget },
- { "shutdown", __PNR_shutdown },
+ { "shutdown", 373 },
{ "sigaction", 67 },
{ "sigaltstack", 186 },
{ "signal", 48 },
@@ -355,9 +358,9 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "sigprocmask", 126 },
{ "sigreturn", 119 },
{ "sigsuspend", 72 },
- { "socket", __PNR_socket },
+ { "socket", 359 },
{ "socketcall", 102 },
- { "socketpair", __PNR_socketpair },
+ { "socketpair", 360 },
{ "splice", 306 },
{ "spu_create", __PNR_spu_create },
{ "spu_run", __PNR_spu_run },
@@ -376,7 +379,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "symlink", 83 },
{ "symlinkat", 297 },
{ "sync", 36 },
- { "sync_file_range" , 307 },
+ { "sync_file_range", 307 },
{ "sync_file_range2", __PNR_sync_file_range2 },
{ "syncfs", 338 },
{ "syscall", __PNR_syscall },
@@ -387,7 +390,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "sysmips", __PNR_sysmips },
{ "tee", 308 },
{ "tgkill", 241 },
- { "time", 13 },
+ { "time", 13 },
{ "timer_create", 254 },
{ "timer_delete", 258 },
{ "timer_getoverrun", 257 },
@@ -414,6 +417,7 @@ const struct arch_syscall_def s390_syscall_table[] = { \
{ "uselib", 86 },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", 355 },
{ "ustat", 62 },
{ "utime", 30 },
{ "utimensat", 315 },
diff --git a/src/arch-s390x-syscalls.c b/src/arch-s390x-syscalls.c
index 50596cb..5d87216 100644
--- a/src/arch-s390x-syscalls.c
+++ b/src/arch-s390x-syscalls.c
@@ -10,13 +10,13 @@
#include "arch.h"
#include "arch-s390x.h"
-/* NOTE: based on Linux 4.2-rc5 */
+/* NOTE: based on Linux 4.3 */
const struct arch_syscall_def s390x_syscall_table[] = { \
{ "_llseek", __PNR__llseek },
{ "_newselect", __PNR__newselect },
{ "_sysctl", 149 },
{ "accept", __PNR_accept },
- { "accept4", __PNR_accept4 },
+ { "accept4", 364 },
{ "access", 33 },
{ "acct", 51 },
{ "add_key", 278 },
@@ -27,7 +27,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "arm_sync_file_range", __PNR_arm_sync_file_range },
{ "arch_prctl", __PNR_arch_prctl },
{ "bdflush", 134 },
- { "bind", __PNR_bind },
+ { "bind", 361 },
{ "bpf", 351 },
{ "break", __PNR_break },
{ "breakpoint", __PNR_breakpoint },
@@ -48,7 +48,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "clock_settime", 259 },
{ "clone", 120 },
{ "close", 6 },
- { "connect", __PNR_connect },
+ { "connect", 362 },
{ "creat", 8 },
{ "create_module", 127 },
{ "delete_module", 129 },
@@ -102,8 +102,8 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "futex", 238 },
{ "futimesat", 292 },
{ "get_kernel_syms", 130 },
- { "get_mempolicy", __PNR_get_mempolicy },
- { "get_robust_list" , 305 },
+ { "get_mempolicy", 269 },
+ { "get_robust_list", 305 },
{ "get_thread_area", __PNR_get_thread_area },
{ "getcpu", 311 },
{ "getcwd", 183 },
@@ -118,7 +118,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "getgroups", 205 },
{ "getgroups32", __PNR_getgroups32 },
{ "getitimer", 105 },
- { "getpeername", __PNR_getpeername },
+ { "getpeername", 368 },
{ "getpgid", 132 },
{ "getpgrp", 65 },
{ "getpid", 20 },
@@ -133,8 +133,8 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "getrlimit", 191 },
{ "getrusage", 77 },
{ "getsid", 147 },
- { "getsockname", __PNR_getsockname },
- { "getsockopt", __PNR_getsockopt },
+ { "getsockname", 367 },
+ { "getsockopt", 365 },
{ "gettid", 236 },
{ "gettimeofday", 78 },
{ "getuid", 199 },
@@ -143,10 +143,10 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "gtty", __PNR_gtty },
{ "idle", 112 },
{ "init_module", 128 },
- { "inotify_add_watch" , 285 },
+ { "inotify_add_watch", 285 },
{ "inotify_init", 284 },
{ "inotify_init1", 324 },
- { "inotify_rm_watch" , 286 },
+ { "inotify_rm_watch", 286 },
{ "io_cancel", 247 },
{ "io_destroy", 244 },
{ "io_getevents", 245 },
@@ -168,7 +168,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "lgetxattr", 228 },
{ "link", 9 },
{ "linkat", 296 },
- { "listen", __PNR_listen },
+ { "listen", 363 },
{ "listxattr", 230 },
{ "llistxattr", 231 },
{ "lock", __PNR_lock },
@@ -179,9 +179,10 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "lstat", 107 },
{ "lstat64", __PNR_lstat64 },
{ "madvise", 219 },
- { "mbind", __PNR_mbind },
+ { "mbind", 268 },
+ { "membarrier", 356 },
{ "memfd_create", 350 },
- { "migrate_pages", __PNR_migrate_pages },
+ { "migrate_pages", 287 },
{ "mincore", 218 },
{ "mkdir", 39 },
{ "mkdirat", 289 },
@@ -193,13 +194,13 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "mmap2", __PNR_mmap2 },
{ "modify_ldt", __PNR_modify_ldt },
{ "mount", 21 },
- { "move_pages", __PNR_move_pages },
+ { "move_pages", 310 },
{ "mprotect", 125 },
{ "mpx", __PNR_mpx },
{ "mq_getsetattr", 276 },
{ "mq_notify", 275 },
{ "mq_open", 271 },
- { "mq_timedreceive" , 274 },
+ { "mq_timedreceive", 274 },
{ "mq_timedsend", 273 },
{ "mq_unlink", 272 },
{ "mremap", 163 },
@@ -260,9 +261,9 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "readv", 145 },
{ "reboot", 88 },
{ "recv", __PNR_recv },
- { "recvfrom", __PNR_recvfrom },
- { "recvmmsg", __PNR_recvmmsg },
- { "recvmsg", __PNR_recvmsg },
+ { "recvfrom", 371 },
+ { "recvmmsg", 357 },
+ { "recvmsg", 372 },
{ "remap_file_pages", 267 },
{ "removexattr", 233 },
{ "rename", 38 },
@@ -280,15 +281,17 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "rt_sigtimedwait", 177 },
{ "rt_tgsigqueueinfo", 330 },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", 353 },
+ { "s390_pci_mmio_write", 352 },
{ "s390_runtime_instr", 342 },
{ "sched_get_priority_max", 159 },
{ "sched_get_priority_min", 160 },
- { "sched_getaffinity" , 240 },
+ { "sched_getaffinity", 240 },
{ "sched_getattr", 346 },
{ "sched_getparam", 155 },
{ "sched_getscheduler", 157 },
{ "sched_rr_get_interval", 161 },
- { "sched_setaffinity" , 239 },
+ { "sched_setaffinity", 239 },
{ "sched_setattr", 345 },
{ "sched_setparam", 154 },
{ "sched_setscheduler", 156 },
@@ -303,11 +306,11 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "send", __PNR_send },
{ "sendfile", 187 },
{ "sendfile64", __PNR_sendfile64 },
- { "sendmmsg", __PNR_sendmmsg },
- { "sendmsg", __PNR_sendmsg },
- { "sendto", __PNR_sendto },
- { "set_mempolicy", __PNR_set_mempolicy },
- { "set_robust_list" , 304 },
+ { "sendmmsg", 358 },
+ { "sendmsg", 370 },
+ { "sendto", 369 },
+ { "set_mempolicy", 270 },
+ { "set_robust_list", 304 },
{ "set_thread_area", __PNR_set_thread_area },
{ "set_tid_address", 252 },
{ "set_tls", __PNR_set_tls },
@@ -335,7 +338,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "setreuid32", __PNR_setreuid32 },
{ "setrlimit", 75 },
{ "setsid", 66 },
- { "setsockopt", __PNR_setsockopt },
+ { "setsockopt", 366 },
{ "settimeofday", 79 },
{ "setuid", 213 },
{ "setuid32", __PNR_setuid32 },
@@ -345,7 +348,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "shmctl", __PNR_shmctl },
{ "shmdt", __PNR_shmdt },
{ "shmget", __PNR_shmget },
- { "shutdown", __PNR_shutdown },
+ { "shutdown", 373 },
{ "sigaction", 67 },
{ "sigaltstack", 186 },
{ "signal", 48 },
@@ -355,9 +358,9 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "sigprocmask", 126 },
{ "sigreturn", 119 },
{ "sigsuspend", 72 },
- { "socket", __PNR_socket },
+ { "socket", 359 },
{ "socketcall", 102 },
- { "socketpair", __PNR_socketpair },
+ { "socketpair", 360 },
{ "splice", 306 },
{ "spu_create", __PNR_spu_create },
{ "spu_run", __PNR_spu_run },
@@ -376,7 +379,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "symlink", 83 },
{ "symlinkat", 297 },
{ "sync", 36 },
- { "sync_file_range" , 307 },
+ { "sync_file_range", 307 },
{ "sync_file_range2", __PNR_sync_file_range2 },
{ "syncfs", 338 },
{ "syscall", __PNR_syscall },
@@ -414,6 +417,7 @@ const struct arch_syscall_def s390x_syscall_table[] = { \
{ "uselib", 86 },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", 355 },
{ "ustat", 62 },
{ "utime", 30 },
{ "utimensat", 315 },
diff --git a/src/arch-x32-syscalls.c b/src/arch-x32-syscalls.c
index d6ea9d4..e6fc6a0 100644
--- a/src/arch-x32-syscalls.c
+++ b/src/arch-x32-syscalls.c
@@ -196,6 +196,7 @@ const struct arch_syscall_def x32_syscall_table[] = { \
{ "lstat64", __PNR_lstat64 },
{ "madvise", (X32_SYSCALL_BIT + 28) },
{ "mbind", (X32_SYSCALL_BIT + 237) },
+ { "membarrier", (X32_SYSCALL_BIT + 324) },
{ "memfd_create", (X32_SYSCALL_BIT + 319) },
{ "migrate_pages", (X32_SYSCALL_BIT + 256) },
{ "mincore", (X32_SYSCALL_BIT + 27) },
@@ -296,6 +297,8 @@ const struct arch_syscall_def x32_syscall_table[] = { \
{ "rt_sigtimedwait", (X32_SYSCALL_BIT + 523) },
{ "rt_tgsigqueueinfo", (X32_SYSCALL_BIT + 536) },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", (X32_SYSCALL_BIT + 146) },
{ "sched_get_priority_min", (X32_SYSCALL_BIT + 147) },
@@ -430,6 +433,7 @@ const struct arch_syscall_def x32_syscall_table[] = { \
{ "uselib", __PNR_uselib },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", (X32_SYSCALL_BIT + 323) },
{ "ustat", (X32_SYSCALL_BIT + 136) },
{ "utime", (X32_SYSCALL_BIT + 132) },
{ "utimensat", (X32_SYSCALL_BIT + 280) },
diff --git a/src/arch-x86-syscalls.c b/src/arch-x86-syscalls.c
index b6665aa..08bcca5 100644
--- a/src/arch-x86-syscalls.c
+++ b/src/arch-x86-syscalls.c
@@ -196,6 +196,7 @@ const struct arch_syscall_def x86_syscall_table[] = { \
{ "lstat64", 196 },
{ "madvise", 219 },
{ "mbind", 274 },
+ { "membarrier", 375 },
{ "memfd_create", 356 },
{ "migrate_pages", 294 },
{ "mincore", 218 },
@@ -296,6 +297,8 @@ const struct arch_syscall_def x86_syscall_table[] = { \
{ "rt_sigtimedwait", 177 },
{ "rt_tgsigqueueinfo", 335 },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", 159 },
{ "sched_get_priority_min", 160 },
@@ -430,6 +433,7 @@ const struct arch_syscall_def x86_syscall_table[] = { \
{ "uselib", 86 },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", 374 },
{ "ustat", 62 },
{ "utime", 30 },
{ "utimensat", 320 },
diff --git a/src/arch-x86_64-syscalls.c b/src/arch-x86_64-syscalls.c
index 90cc21f..ba6eb4c 100644
--- a/src/arch-x86_64-syscalls.c
+++ b/src/arch-x86_64-syscalls.c
@@ -196,6 +196,7 @@ const struct arch_syscall_def x86_64_syscall_table[] = { \
{ "lstat64", __PNR_lstat64 },
{ "madvise", 28 },
{ "mbind", 237 },
+ { "membarrier", 324 },
{ "memfd_create", 319 },
{ "migrate_pages", 256 },
{ "mincore", 27 },
@@ -296,6 +297,8 @@ const struct arch_syscall_def x86_64_syscall_table[] = { \
{ "rt_sigtimedwait", 128 },
{ "rt_tgsigqueueinfo", 297 },
{ "rtas", __PNR_rtas },
+ { "s390_pci_mmio_read", __PNR_s390_pci_mmio_read },
+ { "s390_pci_mmio_write", __PNR_s390_pci_mmio_write },
{ "s390_runtime_instr", __PNR_s390_runtime_instr },
{ "sched_get_priority_max", 146 },
{ "sched_get_priority_min", 147 },
@@ -430,6 +433,7 @@ const struct arch_syscall_def x86_64_syscall_table[] = { \
{ "uselib", 134 },
{ "usr26", __PNR_usr26 },
{ "usr32", __PNR_usr32 },
+ { "userfaultfd", 323 },
{ "ustat", 136 },
{ "utime", 132 },
{ "utimensat", 280 },