summary refs log tree commit diff
diff options
context:
space:
mode:
authorDylan Reid <dgreid@chromium.org>2017-05-11 14:57:30 -0700
committerchrome-bot <chrome-bot@chromium.org>2017-05-29 21:49:05 -0700
commit1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139 (patch)
tree26d129fdcdb4f916f9e4006b14d17c41934b5183
parent664bbcb9701234cf6a92196aaf807558a95f936c (diff)
downloadcrosvm-1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139.tar
crosvm-1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139.tar.gz
crosvm-1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139.tar.bz2
crosvm-1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139.tar.lz
crosvm-1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139.tar.xz
crosvm-1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139.tar.zst
crosvm-1a07d1e8d01a6877185ce76d12fa5ccbfcdf6139.zip
syscall_defines: Add linux syscall defines.
Currently used for SYS_clone.

Change-Id: I69c39e0b0a25a93e3e4dd7b4595bd0df1d41418f
Reviewed-on: https://chromium-review.googlesource.com/509920
Commit-Ready: Dylan Reid <dgreid@chromium.org>
Tested-by: Dylan Reid <dgreid@chromium.org>
Reviewed-by: Zach Reizner <zachr@chromium.org>
-rw-r--r--syscall_defines/Cargo.toml6
-rw-r--r--syscall_defines/src/lib.rs15
-rw-r--r--syscall_defines/src/linux-aarch64/mod.rs330
-rw-r--r--syscall_defines/src/linux-x86/mod.rs384
-rw-r--r--syscall_defines/src/linux-x86_64/mod.rs370
5 files changed, 1105 insertions, 0 deletions
diff --git a/syscall_defines/Cargo.toml b/syscall_defines/Cargo.toml
new file mode 100644
index 0000000..bba104e
--- /dev/null
+++ b/syscall_defines/Cargo.toml
@@ -0,0 +1,6 @@
+[package]
+name = "syscall_defines"
+version = "0.1.0"
+authors = ["The Chromium OS Authors"]
+
+[dependencies]
diff --git a/syscall_defines/src/lib.rs b/syscall_defines/src/lib.rs
new file mode 100644
index 0000000..469aa26
--- /dev/null
+++ b/syscall_defines/src/lib.rs
@@ -0,0 +1,15 @@
+// Copyright 2017 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#[cfg(target_arch="x86_64")]
+#[path="linux-x86_64/mod.rs"]
+pub mod linux;
+
+#[cfg(target_arch="x86")]
+#[path="linux-x86/mod.rs"]
+pub mod linux;
+
+#[cfg(target_arch="aarch64")]
+#[path="linux-aarch64/mod.rs"]
+pub mod linux;
diff --git a/syscall_defines/src/linux-aarch64/mod.rs b/syscall_defines/src/linux-aarch64/mod.rs
new file mode 100644
index 0000000..8136d00
--- /dev/null
+++ b/syscall_defines/src/linux-aarch64/mod.rs
@@ -0,0 +1,330 @@
+// Copyright 2017 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Generated with: cat include/uapi/asm-generic/unistd.h |
+//    awk ' { print "SYS_" $2 " = " $2"," } '
+#[allow(dead_code)]
+#[allow(non_camel_case_types)]
+pub enum LinuxSyscall {
+    SYS_io_setup = 0,
+    SYS_io_destroy = 1,
+    SYS_io_submit = 2,
+    SYS_io_cancel = 3,
+    SYS_io_getevents = 4,
+    SYS_setxattr = 5,
+    SYS_lsetxattr = 6,
+    SYS_fsetxattr = 7,
+    SYS_getxattr = 8,
+    SYS_lgetxattr = 9,
+    SYS_fgetxattr = 10,
+    SYS_listxattr = 11,
+    SYS_llistxattr = 12,
+    SYS_flistxattr = 13,
+    SYS_removexattr = 14,
+    SYS_lremovexattr = 15,
+    SYS_fremovexattr = 16,
+    SYS_getcwd = 17,
+    SYS_lookup_dcookie = 18,
+    SYS_eventfd2 = 19,
+    SYS_epoll_create1 = 20,
+    SYS_epoll_ctl = 21,
+    SYS_epoll_pwait = 22,
+    SYS_dup = 23,
+    SYS_dup3 = 24,
+    SYS_inotify_init1 = 26,
+    SYS_inotify_add_watch = 27,
+    SYS_inotify_rm_watch = 28,
+    SYS_ioctl = 29,
+    SYS_ioprio_set = 30,
+    SYS_ioprio_get = 31,
+    SYS_flock = 32,
+    SYS_mknodat = 33,
+    SYS_mkdirat = 34,
+    SYS_unlinkat = 35,
+    SYS_symlinkat = 36,
+    SYS_linkat = 37,
+    SYS_renameat = 38,
+    SYS_umount2 = 39,
+    SYS_mount = 40,
+    SYS_pivot_root = 41,
+    SYS_nfsservctl = 42,
+    SYS_fallocate = 47,
+    SYS_faccessat = 48,
+    SYS_chdir = 49,
+    SYS_fchdir = 50,
+    SYS_chroot = 51,
+    SYS_fchmod = 52,
+    SYS_fchmodat = 53,
+    SYS_fchownat = 54,
+    SYS_fchown = 55,
+    SYS_openat = 56,
+    SYS_close = 57,
+    SYS_vhangup = 58,
+    SYS_pipe2 = 59,
+    SYS_quotactl = 60,
+    SYS_getdents64 = 61,
+    SYS_read = 63,
+    SYS_write = 64,
+    SYS_readv = 65,
+    SYS_writev = 66,
+    SYS_pread64 = 67,
+    SYS_pwrite64 = 68,
+    SYS_preadv = 69,
+    SYS_pwritev = 70,
+    SYS_pselect6 = 72,
+    SYS_ppoll = 73,
+    SYS_signalfd4 = 74,
+    SYS_vmsplice = 75,
+    SYS_splice = 76,
+    SYS_tee = 77,
+    SYS_readlinkat = 78,
+    SYS_sync = 81,
+    SYS_fsync = 82,
+    SYS_fdatasync = 83,
+    SYS_sync_file_range = 84,
+    SYS_timerfd_create = 85,
+    SYS_timerfd_settime = 86,
+    SYS_timerfd_gettime = 87,
+    SYS_utimensat = 88,
+    SYS_acct = 89,
+    SYS_capget = 90,
+    SYS_capset = 91,
+    SYS_personality = 92,
+    SYS_exit = 93,
+    SYS_exit_group = 94,
+    SYS_waitid = 95,
+    SYS_set_tid_address = 96,
+    SYS_unshare = 97,
+    SYS_futex = 98,
+    SYS_set_robust_list = 99,
+    SYS_get_robust_list = 100,
+    SYS_nanosleep = 101,
+    SYS_getitimer = 102,
+    SYS_setitimer = 103,
+    SYS_kexec_load = 104,
+    SYS_init_module = 105,
+    SYS_delete_module = 106,
+    SYS_timer_create = 107,
+    SYS_timer_gettime = 108,
+    SYS_timer_getoverrun = 109,
+    SYS_timer_settime = 110,
+    SYS_timer_delete = 111,
+    SYS_clock_settime = 112,
+    SYS_clock_gettime = 113,
+    SYS_clock_getres = 114,
+    SYS_clock_nanosleep = 115,
+    SYS_syslog = 116,
+    SYS_ptrace = 117,
+    SYS_sched_setparam = 118,
+    SYS_sched_setscheduler = 119,
+    SYS_sched_getscheduler = 120,
+    SYS_sched_getparam = 121,
+    SYS_sched_setaffinity = 122,
+    SYS_sched_getaffinity = 123,
+    SYS_sched_yield = 124,
+    SYS_sched_get_priority_max = 125,
+    SYS_sched_get_priority_min = 126,
+    SYS_sched_rr_get_interval = 127,
+    SYS_restart_syscall = 128,
+    SYS_kill = 129,
+    SYS_tkill = 130,
+    SYS_tgkill = 131,
+    SYS_sigaltstack = 132,
+    SYS_rt_sigsuspend = 133,
+    SYS_rt_sigaction = 134,
+    SYS_rt_sigprocmask = 135,
+    SYS_rt_sigpending = 136,
+    SYS_rt_sigtimedwait = 137,
+    SYS_rt_sigqueueinfo = 138,
+    SYS_rt_sigreturn = 139,
+    SYS_setpriority = 140,
+    SYS_getpriority = 141,
+    SYS_reboot = 142,
+    SYS_setregid = 143,
+    SYS_setgid = 144,
+    SYS_setreuid = 145,
+    SYS_setuid = 146,
+    SYS_setresuid = 147,
+    SYS_getresuid = 148,
+    SYS_setresgid = 149,
+    SYS_getresgid = 150,
+    SYS_setfsuid = 151,
+    SYS_setfsgid = 152,
+    SYS_times = 153,
+    SYS_setpgid = 154,
+    SYS_getpgid = 155,
+    SYS_getsid = 156,
+    SYS_setsid = 157,
+    SYS_getgroups = 158,
+    SYS_setgroups = 159,
+    SYS_uname = 160,
+    SYS_sethostname = 161,
+    SYS_setdomainname = 162,
+    SYS_getrlimit = 163,
+    SYS_setrlimit = 164,
+    SYS_getrusage = 165,
+    SYS_umask = 166,
+    SYS_prctl = 167,
+    SYS_getcpu = 168,
+    SYS_gettimeofday = 169,
+    SYS_settimeofday = 170,
+    SYS_adjtimex = 171,
+    SYS_getpid = 172,
+    SYS_getppid = 173,
+    SYS_getuid = 174,
+    SYS_geteuid = 175,
+    SYS_getgid = 176,
+    SYS_getegid = 177,
+    SYS_gettid = 178,
+    SYS_sysinfo = 179,
+    SYS_mq_open = 180,
+    SYS_mq_unlink = 181,
+    SYS_mq_timedsend = 182,
+    SYS_mq_timedreceive = 183,
+    SYS_mq_notify = 184,
+    SYS_mq_getsetattr = 185,
+    SYS_msgget = 186,
+    SYS_msgctl = 187,
+    SYS_msgrcv = 188,
+    SYS_msgsnd = 189,
+    SYS_semget = 190,
+    SYS_semctl = 191,
+    SYS_semtimedop = 192,
+    SYS_semop = 193,
+    SYS_shmget = 194,
+    SYS_shmctl = 195,
+    SYS_shmat = 196,
+    SYS_shmdt = 197,
+    SYS_socket = 198,
+    SYS_socketpair = 199,
+    SYS_bind = 200,
+    SYS_listen = 201,
+    SYS_accept = 202,
+    SYS_connect = 203,
+    SYS_getsockname = 204,
+    SYS_getpeername = 205,
+    SYS_sendto = 206,
+    SYS_recvfrom = 207,
+    SYS_setsockopt = 208,
+    SYS_getsockopt = 209,
+    SYS_shutdown = 210,
+    SYS_sendmsg = 211,
+    SYS_recvmsg = 212,
+    SYS_readahead = 213,
+    SYS_brk = 214,
+    SYS_munmap = 215,
+    SYS_mremap = 216,
+    SYS_add_key = 217,
+    SYS_request_key = 218,
+    SYS_keyctl = 219,
+    SYS_clone = 220,
+    SYS_execve = 221,
+    SYS_swapon = 224,
+    SYS_swapoff = 225,
+    SYS_mprotect = 226,
+    SYS_msync = 227,
+    SYS_mlock = 228,
+    SYS_munlock = 229,
+    SYS_mlockall = 230,
+    SYS_munlockall = 231,
+    SYS_mincore = 232,
+    SYS_madvise = 233,
+    SYS_remap_file_pages = 234,
+    SYS_mbind = 235,
+    SYS_get_mempolicy = 236,
+    SYS_set_mempolicy = 237,
+    SYS_migrate_pages = 238,
+    SYS_move_pages = 239,
+    SYS_rt_tgsigqueueinfo = 240,
+    SYS_perf_event_open = 241,
+    SYS_accept4 = 242,
+    SYS_recvmmsg = 243,
+    SYS_arch_specific_syscall = 244,
+    SYS_wait4 = 260,
+    SYS_prlimit64 = 261,
+    SYS_fanotify_init = 262,
+    SYS_fanotify_mark = 263,
+    SYS_name_to_handle_at = 264,
+    SYS_open_by_handle_at = 265,
+    SYS_clock_adjtime = 266,
+    SYS_syncfs = 267,
+    SYS_setns = 268,
+    SYS_sendmmsg = 269,
+    SYS_process_vm_readv = 270,
+    SYS_process_vm_writev = 271,
+    SYS_kcmp = 272,
+    SYS_finit_module = 273,
+    SYS_sched_setattr = 274,
+    SYS_sched_getattr = 275,
+    SYS_renameat2 = 276,
+    SYS_seccomp = 277,
+    SYS_getrandom = 278,
+    SYS_memfd_create = 279,
+    SYS_bpf = 280,
+    SYS_execveat = 281,
+    SYS_userfaultfd = 282,
+    SYS_membarrier = 283,
+    SYS_mlock2 = 284,
+    SYS_copy_file_range = 285,
+    SYS_preadv2 = 286,
+    SYS_pwritev2 = 287,
+    SYS_pkey_mprotect = 288,
+    SYS_pkey_alloc = 289,
+    SYS_pkey_free = 290,
+    SYS_syscalls = 291,
+    SYS_open = 1024,
+    SYS_link = 1025,
+    SYS_unlink = 1026,
+    SYS_mknod = 1027,
+    SYS_chmod = 1028,
+    SYS_chown = 1029,
+    SYS_mkdir = 1030,
+    SYS_rmdir = 1031,
+    SYS_lchown = 1032,
+    SYS_access = 1033,
+    SYS_rename = 1034,
+    SYS_readlink = 1035,
+    SYS_symlink = 1036,
+    SYS_utimes = 1037,
+    SYS_pipe = 1040,
+    SYS_dup2 = 1041,
+    SYS_epoll_create = 1042,
+    SYS_inotify_init = 1043,
+    SYS_eventfd = 1044,
+    SYS_signalfd = 1045,
+    SYS_sendfile = 1046,
+    SYS_ftruncate = 1047,
+    SYS_truncate = 1048,
+    SYS_stat = 1049,
+    SYS_lstat = 1050,
+    SYS_fstat = 1051,
+    SYS_fcntl = 1052,
+    SYS_fadvise64 = 1053,
+    SYS_newfstatat = 1054,
+    SYS_fstatfs = 1055,
+    SYS_statfs = 1056,
+    SYS_lseek = 1057,
+    SYS_mmap = 1058,
+    SYS_alarm = 1059,
+    SYS_getpgrp = 1060,
+    SYS_pause = 1061,
+    SYS_time = 1062,
+    SYS_utime = 1063,
+    SYS_creat = 1064,
+    SYS_getdents = 1065,
+    SYS_futimesat = 1066,
+    SYS_select = 1067,
+    SYS_poll = 1068,
+    SYS_epoll_wait = 1069,
+    SYS_ustat = 1070,
+    SYS_vfork = 1071,
+    SYS_oldwait4 = 1072,
+    SYS_recv = 1073,
+    SYS_send = 1074,
+    SYS_bdflush = 1075,
+    SYS_umount = 1076,
+    SYS_uselib = 1077,
+    SYS__sysctl = 1078,
+    SYS_fork = 1079,
+}
diff --git a/syscall_defines/src/linux-x86/mod.rs b/syscall_defines/src/linux-x86/mod.rs
new file mode 100644
index 0000000..c6a3302
--- /dev/null
+++ b/syscall_defines/src/linux-x86/mod.rs
@@ -0,0 +1,384 @@
+// Copyright 2017 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Generated with: cat arch/x86/entry/syscalls/syscall_32.tbl |
+//    awk ' { print "SYS_" $3 " = " $1"," } '
+#[allow(dead_code)]
+#[allow(non_camel_case_types)]
+pub enum LinuxSyscall {
+    SYS_restart_syscall = 0,
+    SYS_exit = 1,
+    SYS_fork = 2,
+    SYS_read = 3,
+    SYS_write = 4,
+    SYS_open = 5,
+    SYS_close = 6,
+    SYS_waitpid = 7,
+    SYS_creat = 8,
+    SYS_link = 9,
+    SYS_unlink = 10,
+    SYS_execve = 11,
+    SYS_chdir = 12,
+    SYS_time = 13,
+    SYS_mknod = 14,
+    SYS_chmod = 15,
+    SYS_lchown = 16,
+    SYS_break = 17,
+    SYS_oldstat = 18,
+    SYS_lseek = 19,
+    SYS_getpid = 20,
+    SYS_mount = 21,
+    SYS_umount = 22,
+    SYS_setuid = 23,
+    SYS_getuid = 24,
+    SYS_stime = 25,
+    SYS_ptrace = 26,
+    SYS_alarm = 27,
+    SYS_oldfstat = 28,
+    SYS_pause = 29,
+    SYS_utime = 30,
+    SYS_stty = 31,
+    SYS_gtty = 32,
+    SYS_access = 33,
+    SYS_nice = 34,
+    SYS_ftime = 35,
+    SYS_sync = 36,
+    SYS_kill = 37,
+    SYS_rename = 38,
+    SYS_mkdir = 39,
+    SYS_rmdir = 40,
+    SYS_dup = 41,
+    SYS_pipe = 42,
+    SYS_times = 43,
+    SYS_prof = 44,
+    SYS_brk = 45,
+    SYS_setgid = 46,
+    SYS_getgid = 47,
+    SYS_signal = 48,
+    SYS_geteuid = 49,
+    SYS_getegid = 50,
+    SYS_acct = 51,
+    SYS_umount2 = 52,
+    SYS_lock = 53,
+    SYS_ioctl = 54,
+    SYS_fcntl = 55,
+    SYS_mpx = 56,
+    SYS_setpgid = 57,
+    SYS_ulimit = 58,
+    SYS_oldolduname = 59,
+    SYS_umask = 60,
+    SYS_chroot = 61,
+    SYS_ustat = 62,
+    SYS_dup2 = 63,
+    SYS_getppid = 64,
+    SYS_getpgrp = 65,
+    SYS_setsid = 66,
+    SYS_sigaction = 67,
+    SYS_sgetmask = 68,
+    SYS_ssetmask = 69,
+    SYS_setreuid = 70,
+    SYS_setregid = 71,
+    SYS_sigsuspend = 72,
+    SYS_sigpending = 73,
+    SYS_sethostname = 74,
+    SYS_setrlimit = 75,
+    SYS_getrlimit = 76,
+    SYS_getrusage = 77,
+    SYS_gettimeofday = 78,
+    SYS_settimeofday = 79,
+    SYS_getgroups = 80,
+    SYS_setgroups = 81,
+    SYS_select = 82,
+    SYS_symlink = 83,
+    SYS_oldlstat = 84,
+    SYS_readlink = 85,
+    SYS_uselib = 86,
+    SYS_swapon = 87,
+    SYS_reboot = 88,
+    SYS_readdir = 89,
+    SYS_mmap = 90,
+    SYS_munmap = 91,
+    SYS_truncate = 92,
+    SYS_ftruncate = 93,
+    SYS_fchmod = 94,
+    SYS_fchown = 95,
+    SYS_getpriority = 96,
+    SYS_setpriority = 97,
+    SYS_profil = 98,
+    SYS_statfs = 99,
+    SYS_fstatfs = 100,
+    SYS_ioperm = 101,
+    SYS_socketcall = 102,
+    SYS_syslog = 103,
+    SYS_setitimer = 104,
+    SYS_getitimer = 105,
+    SYS_stat = 106,
+    SYS_lstat = 107,
+    SYS_fstat = 108,
+    SYS_olduname = 109,
+    SYS_iopl = 110,
+    SYS_vhangup = 111,
+    SYS_idle = 112,
+    SYS_vm86old = 113,
+    SYS_wait4 = 114,
+    SYS_swapoff = 115,
+    SYS_sysinfo = 116,
+    SYS_ipc = 117,
+    SYS_fsync = 118,
+    SYS_sigreturn = 119,
+    SYS_clone = 120,
+    SYS_setdomainname = 121,
+    SYS_uname = 122,
+    SYS_modify_ldt = 123,
+    SYS_adjtimex = 124,
+    SYS_mprotect = 125,
+    SYS_sigprocmask = 126,
+    SYS_create_module = 127,
+    SYS_init_module = 128,
+    SYS_delete_module = 129,
+    SYS_get_kernel_syms = 130,
+    SYS_quotactl = 131,
+    SYS_getpgid = 132,
+    SYS_fchdir = 133,
+    SYS_bdflush = 134,
+    SYS_sysfs = 135,
+    SYS_personality = 136,
+    SYS_afs_syscall = 137,
+    SYS_setfsuid = 138,
+    SYS_setfsgid = 139,
+    SYS__llseek = 140,
+    SYS_getdents = 141,
+    SYS__newselect = 142,
+    SYS_flock = 143,
+    SYS_msync = 144,
+    SYS_readv = 145,
+    SYS_writev = 146,
+    SYS_getsid = 147,
+    SYS_fdatasync = 148,
+    SYS__sysctl = 149,
+    SYS_mlock = 150,
+    SYS_munlock = 151,
+    SYS_mlockall = 152,
+    SYS_munlockall = 153,
+    SYS_sched_setparam = 154,
+    SYS_sched_getparam = 155,
+    SYS_sched_setscheduler = 156,
+    SYS_sched_getscheduler = 157,
+    SYS_sched_yield = 158,
+    SYS_sched_get_priority_max = 159,
+    SYS_sched_get_priority_min = 160,
+    SYS_sched_rr_get_interval = 161,
+    SYS_nanosleep = 162,
+    SYS_mremap = 163,
+    SYS_setresuid = 164,
+    SYS_getresuid = 165,
+    SYS_vm86 = 166,
+    SYS_query_module = 167,
+    SYS_poll = 168,
+    SYS_nfsservctl = 169,
+    SYS_setresgid = 170,
+    SYS_getresgid = 171,
+    SYS_prctl = 172,
+    SYS_rt_sigreturn = 173,
+    SYS_rt_sigaction = 174,
+    SYS_rt_sigprocmask = 175,
+    SYS_rt_sigpending = 176,
+    SYS_rt_sigtimedwait = 177,
+    SYS_rt_sigqueueinfo = 178,
+    SYS_rt_sigsuspend = 179,
+    SYS_pread64 = 180,
+    SYS_pwrite64 = 181,
+    SYS_chown = 182,
+    SYS_getcwd = 183,
+    SYS_capget = 184,
+    SYS_capset = 185,
+    SYS_sigaltstack = 186,
+    SYS_sendfile = 187,
+    SYS_getpmsg = 188,
+    SYS_putpmsg = 189,
+    SYS_vfork = 190,
+    SYS_ugetrlimit = 191,
+    SYS_mmap2 = 192,
+    SYS_truncate64 = 193,
+    SYS_ftruncate64 = 194,
+    SYS_stat64 = 195,
+    SYS_lstat64 = 196,
+    SYS_fstat64 = 197,
+    SYS_lchown32 = 198,
+    SYS_getuid32 = 199,
+    SYS_getgid32 = 200,
+    SYS_geteuid32 = 201,
+    SYS_getegid32 = 202,
+    SYS_setreuid32 = 203,
+    SYS_setregid32 = 204,
+    SYS_getgroups32 = 205,
+    SYS_setgroups32 = 206,
+    SYS_fchown32 = 207,
+    SYS_setresuid32 = 208,
+    SYS_getresuid32 = 209,
+    SYS_setresgid32 = 210,
+    SYS_getresgid32 = 211,
+    SYS_chown32 = 212,
+    SYS_setuid32 = 213,
+    SYS_setgid32 = 214,
+    SYS_setfsuid32 = 215,
+    SYS_setfsgid32 = 216,
+    SYS_pivot_root = 217,
+    SYS_mincore = 218,
+    SYS_madvise = 219,
+    SYS_getdents64 = 220,
+    SYS_fcntl64 = 221,
+    SYS_gettid = 224,
+    SYS_readahead = 225,
+    SYS_setxattr = 226,
+    SYS_lsetxattr = 227,
+    SYS_fsetxattr = 228,
+    SYS_getxattr = 229,
+    SYS_lgetxattr = 230,
+    SYS_fgetxattr = 231,
+    SYS_listxattr = 232,
+    SYS_llistxattr = 233,
+    SYS_flistxattr = 234,
+    SYS_removexattr = 235,
+    SYS_lremovexattr = 236,
+    SYS_fremovexattr = 237,
+    SYS_tkill = 238,
+    SYS_sendfile64 = 239,
+    SYS_futex = 240,
+    SYS_sched_setaffinity = 241,
+    SYS_sched_getaffinity = 242,
+    SYS_set_thread_area = 243,
+    SYS_get_thread_area = 244,
+    SYS_io_setup = 245,
+    SYS_io_destroy = 246,
+    SYS_io_getevents = 247,
+    SYS_io_submit = 248,
+    SYS_io_cancel = 249,
+    SYS_fadvise64 = 250,
+    SYS_exit_group = 252,
+    SYS_lookup_dcookie = 253,
+    SYS_epoll_create = 254,
+    SYS_epoll_ctl = 255,
+    SYS_epoll_wait = 256,
+    SYS_remap_file_pages = 257,
+    SYS_set_tid_address = 258,
+    SYS_timer_create = 259,
+    SYS_timer_settime = 260,
+    SYS_timer_gettime = 261,
+    SYS_timer_getoverrun = 262,
+    SYS_timer_delete = 263,
+    SYS_clock_settime = 264,
+    SYS_clock_gettime = 265,
+    SYS_clock_getres = 266,
+    SYS_clock_nanosleep = 267,
+    SYS_statfs64 = 268,
+    SYS_fstatfs64 = 269,
+    SYS_tgkill = 270,
+    SYS_utimes = 271,
+    SYS_fadvise64_64 = 272,
+    SYS_vserver = 273,
+    SYS_mbind = 274,
+    SYS_get_mempolicy = 275,
+    SYS_set_mempolicy = 276,
+    SYS_mq_open = 277,
+    SYS_mq_unlink = 278,
+    SYS_mq_timedsend = 279,
+    SYS_mq_timedreceive = 280,
+    SYS_mq_notify = 281,
+    SYS_mq_getsetattr = 282,
+    SYS_kexec_load = 283,
+    SYS_waitid = 284,
+    SYS_sys_setaltroot = 285,
+    SYS_add_key = 286,
+    SYS_request_key = 287,
+    SYS_keyctl = 288,
+    SYS_ioprio_set = 289,
+    SYS_ioprio_get = 290,
+    SYS_inotify_init = 291,
+    SYS_inotify_add_watch = 292,
+    SYS_inotify_rm_watch = 293,
+    SYS_migrate_pages = 294,
+    SYS_openat = 295,
+    SYS_mkdirat = 296,
+    SYS_mknodat = 297,
+    SYS_fchownat = 298,
+    SYS_futimesat = 299,
+    SYS_fstatat64 = 300,
+    SYS_unlinkat = 301,
+    SYS_renameat = 302,
+    SYS_linkat = 303,
+    SYS_symlinkat = 304,
+    SYS_readlinkat = 305,
+    SYS_fchmodat = 306,
+    SYS_faccessat = 307,
+    SYS_pselect6 = 308,
+    SYS_ppoll = 309,
+    SYS_unshare = 310,
+    SYS_set_robust_list = 311,
+    SYS_get_robust_list = 312,
+    SYS_splice = 313,
+    SYS_sync_file_range = 314,
+    SYS_tee = 315,
+    SYS_vmsplice = 316,
+    SYS_move_pages = 317,
+    SYS_getcpu = 318,
+    SYS_epoll_pwait = 319,
+    SYS_utimensat = 320,
+    SYS_signalfd = 321,
+    SYS_timerfd_create = 322,
+    SYS_eventfd = 323,
+    SYS_fallocate = 324,
+    SYS_timerfd_settime = 325,
+    SYS_timerfd_gettime = 326,
+    SYS_signalfd4 = 327,
+    SYS_eventfd2 = 328,
+    SYS_epoll_create1 = 329,
+    SYS_dup3 = 330,
+    SYS_pipe2 = 331,
+    SYS_inotify_init1 = 332,
+    SYS_preadv = 333,
+    SYS_pwritev = 334,
+    SYS_rt_tgsigqueueinfo = 335,
+    SYS_perf_event_open = 336,
+    SYS_recvmmsg = 337,
+    SYS_fanotify_init = 338,
+    SYS_fanotify_mark = 339,
+    SYS_prlimit64 = 340,
+    SYS_name_to_handle_at = 341,
+    SYS_open_by_handle_at = 342,
+    SYS_clock_adjtime = 343,
+    SYS_syncfs = 344,
+    SYS_sendmmsg = 345,
+    SYS_setns = 346,
+    SYS_process_vm_readv = 347,
+    SYS_process_vm_writev = 348,
+    SYS_kcmp = 349,
+    SYS_finit_module = 350,
+    SYS_sched_setattr = 351,
+    SYS_sched_getattr = 352,
+    SYS_renameat2 = 353,
+    SYS_seccomp = 354,
+    SYS_getrandom = 355,
+    SYS_memfd_create = 356,
+    SYS_bpf = 357,
+    SYS_execveat = 358,
+    SYS_socket = 359,
+    SYS_socketpair = 360,
+    SYS_bind = 361,
+    SYS_connect = 362,
+    SYS_listen = 363,
+    SYS_accept4 = 364,
+    SYS_getsockopt = 365,
+    SYS_setsockopt = 366,
+    SYS_getsockname = 367,
+    SYS_getpeername = 368,
+    SYS_sendto = 369,
+    SYS_sendmsg = 370,
+    SYS_recvfrom = 371,
+    SYS_recvmsg = 372,
+    SYS_shutdown = 373,
+    SYS_userfaultfd = 374,
+    SYS_membarrier = 375,
+    SYS_mlock2 = 376,
+}
diff --git a/syscall_defines/src/linux-x86_64/mod.rs b/syscall_defines/src/linux-x86_64/mod.rs
new file mode 100644
index 0000000..f58961a
--- /dev/null
+++ b/syscall_defines/src/linux-x86_64/mod.rs
@@ -0,0 +1,370 @@
+// Copyright 2017 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Generated with: cat arch/x86/entry/syscalls/syscall_64.tbl |
+//    awk ' { print "SYS_" $3 " = " $1"," } '
+#[allow(dead_code)]
+#[allow(non_camel_case_types)]
+pub enum LinuxSyscall {
+    SYS_read = 0,
+    SYS_write = 1,
+    SYS_open = 2,
+    SYS_close = 3,
+    SYS_stat = 4,
+    SYS_fstat = 5,
+    SYS_lstat = 6,
+    SYS_poll = 7,
+    SYS_lseek = 8,
+    SYS_mmap = 9,
+    SYS_mprotect = 10,
+    SYS_munmap = 11,
+    SYS_brk = 12,
+    SYS_rt_sigaction = 13,
+    SYS_rt_sigprocmask = 14,
+    SYS_rt_sigreturn = 15,
+    SYS_ioctl = 16,
+    SYS_pread64 = 17,
+    SYS_pwrite64 = 18,
+    SYS_readv = 19,
+    SYS_writev = 20,
+    SYS_access = 21,
+    SYS_pipe = 22,
+    SYS_select = 23,
+    SYS_sched_yield = 24,
+    SYS_mremap = 25,
+    SYS_msync = 26,
+    SYS_mincore = 27,
+    SYS_madvise = 28,
+    SYS_shmget = 29,
+    SYS_shmat = 30,
+    SYS_shmctl = 31,
+    SYS_dup = 32,
+    SYS_dup2 = 33,
+    SYS_pause = 34,
+    SYS_nanosleep = 35,
+    SYS_getitimer = 36,
+    SYS_alarm = 37,
+    SYS_setitimer = 38,
+    SYS_getpid = 39,
+    SYS_sendfile = 40,
+    SYS_socket = 41,
+    SYS_connect = 42,
+    SYS_accept = 43,
+    SYS_sendto = 44,
+    SYS_recvfrom = 45,
+    SYS_sendmsg = 46,
+    SYS_recvmsg = 47,
+    SYS_shutdown = 48,
+    SYS_bind = 49,
+    SYS_listen = 50,
+    SYS_getsockname = 51,
+    SYS_getpeername = 52,
+    SYS_socketpair = 53,
+    SYS_setsockopt = 54,
+    SYS_getsockopt = 55,
+    SYS_clone = 56,
+    SYS_fork = 57,
+    SYS_vfork = 58,
+    SYS_execve = 59,
+    SYS_exit = 60,
+    SYS_wait4 = 61,
+    SYS_kill = 62,
+    SYS_uname = 63,
+    SYS_semget = 64,
+    SYS_semop = 65,
+    SYS_semctl = 66,
+    SYS_shmdt = 67,
+    SYS_msgget = 68,
+    SYS_msgsnd = 69,
+    SYS_msgrcv = 70,
+    SYS_msgctl = 71,
+    SYS_fcntl = 72,
+    SYS_flock = 73,
+    SYS_fsync = 74,
+    SYS_fdatasync = 75,
+    SYS_truncate = 76,
+    SYS_ftruncate = 77,
+    SYS_getdents = 78,
+    SYS_getcwd = 79,
+    SYS_chdir = 80,
+    SYS_fchdir = 81,
+    SYS_rename = 82,
+    SYS_mkdir = 83,
+    SYS_rmdir = 84,
+    SYS_creat = 85,
+    SYS_link = 86,
+    SYS_unlink = 87,
+    SYS_symlink = 88,
+    SYS_readlink = 89,
+    SYS_chmod = 90,
+    SYS_fchmod = 91,
+    SYS_chown = 92,
+    SYS_fchown = 93,
+    SYS_lchown = 94,
+    SYS_umask = 95,
+    SYS_gettimeofday = 96,
+    SYS_getrlimit = 97,
+    SYS_getrusage = 98,
+    SYS_sysinfo = 99,
+    SYS_times = 100,
+    SYS_ptrace = 101,
+    SYS_getuid = 102,
+    SYS_syslog = 103,
+    SYS_getgid = 104,
+    SYS_setuid = 105,
+    SYS_setgid = 106,
+    SYS_geteuid = 107,
+    SYS_getegid = 108,
+    SYS_setpgid = 109,
+    SYS_getppid = 110,
+    SYS_getpgrp = 111,
+    SYS_setsid = 112,
+    SYS_setreuid = 113,
+    SYS_setregid = 114,
+    SYS_getgroups = 115,
+    SYS_setgroups = 116,
+    SYS_setresuid = 117,
+    SYS_getresuid = 118,
+    SYS_setresgid = 119,
+    SYS_getresgid = 120,
+    SYS_getpgid = 121,
+    SYS_setfsuid = 122,
+    SYS_setfsgid = 123,
+    SYS_getsid = 124,
+    SYS_capget = 125,
+    SYS_capset = 126,
+    SYS_rt_sigpending = 127,
+    SYS_rt_sigtimedwait = 128,
+    SYS_rt_sigqueueinfo = 129,
+    SYS_rt_sigsuspend = 130,
+    SYS_sigaltstack = 131,
+    SYS_utime = 132,
+    SYS_mknod = 133,
+    SYS_uselib = 134,
+    SYS_personality = 135,
+    SYS_ustat = 136,
+    SYS_statfs = 137,
+    SYS_fstatfs = 138,
+    SYS_sysfs = 139,
+    SYS_getpriority = 140,
+    SYS_setpriority = 141,
+    SYS_sched_setparam = 142,
+    SYS_sched_getparam = 143,
+    SYS_sched_setscheduler = 144,
+    SYS_sched_getscheduler = 145,
+    SYS_sched_get_priority_max = 146,
+    SYS_sched_get_priority_min = 147,
+    SYS_sched_rr_get_interval = 148,
+    SYS_mlock = 149,
+    SYS_munlock = 150,
+    SYS_mlockall = 151,
+    SYS_munlockall = 152,
+    SYS_vhangup = 153,
+    SYS_modify_ldt = 154,
+    SYS_pivot_root = 155,
+    SYS__sysctl = 156,
+    SYS_prctl = 157,
+    SYS_arch_prctl = 158,
+    SYS_adjtimex = 159,
+    SYS_setrlimit = 160,
+    SYS_chroot = 161,
+    SYS_sync = 162,
+    SYS_acct = 163,
+    SYS_settimeofday = 164,
+    SYS_mount = 165,
+    SYS_umount2 = 166,
+    SYS_swapon = 167,
+    SYS_swapoff = 168,
+    SYS_reboot = 169,
+    SYS_sethostname = 170,
+    SYS_setdomainname = 171,
+    SYS_iopl = 172,
+    SYS_ioperm = 173,
+    SYS_create_module = 174,
+    SYS_init_module = 175,
+    SYS_delete_module = 176,
+    SYS_get_kernel_syms = 177,
+    SYS_query_module = 178,
+    SYS_quotactl = 179,
+    SYS_nfsservctl = 180,
+    SYS_getpmsg = 181,
+    SYS_putpmsg = 182,
+    SYS_afs_syscall = 183,
+    SYS_tuxcall = 184,
+    SYS_security = 185,
+    SYS_gettid = 186,
+    SYS_readahead = 187,
+    SYS_setxattr = 188,
+    SYS_lsetxattr = 189,
+    SYS_fsetxattr = 190,
+    SYS_getxattr = 191,
+    SYS_lgetxattr = 192,
+    SYS_fgetxattr = 193,
+    SYS_listxattr = 194,
+    SYS_llistxattr = 195,
+    SYS_flistxattr = 196,
+    SYS_removexattr = 197,
+    SYS_lremovexattr = 198,
+    SYS_fremovexattr = 199,
+    SYS_tkill = 200,
+    SYS_time = 201,
+    SYS_futex = 202,
+    SYS_sched_setaffinity = 203,
+    SYS_sched_getaffinity = 204,
+    SYS_set_thread_area = 205,
+    SYS_io_setup = 206,
+    SYS_io_destroy = 207,
+    SYS_io_getevents = 208,
+    SYS_io_submit = 209,
+    SYS_io_cancel = 210,
+    SYS_get_thread_area = 211,
+    SYS_lookup_dcookie = 212,
+    SYS_epoll_create = 213,
+    SYS_epoll_ctl_old = 214,
+    SYS_epoll_wait_old = 215,
+    SYS_remap_file_pages = 216,
+    SYS_getdents64 = 217,
+    SYS_set_tid_address = 218,
+    SYS_restart_syscall = 219,
+    SYS_semtimedop = 220,
+    SYS_fadvise64 = 221,
+    SYS_timer_create = 222,
+    SYS_timer_settime = 223,
+    SYS_timer_gettime = 224,
+    SYS_timer_getoverrun = 225,
+    SYS_timer_delete = 226,
+    SYS_clock_settime = 227,
+    SYS_clock_gettime = 228,
+    SYS_clock_getres = 229,
+    SYS_clock_nanosleep = 230,
+    SYS_exit_group = 231,
+    SYS_epoll_wait = 232,
+    SYS_epoll_ctl = 233,
+    SYS_tgkill = 234,
+    SYS_utimes = 235,
+    SYS_vserver = 236,
+    SYS_mbind = 237,
+    SYS_set_mempolicy = 238,
+    SYS_get_mempolicy = 239,
+    SYS_mq_open = 240,
+    SYS_mq_unlink = 241,
+    SYS_mq_timedsend = 242,
+    SYS_mq_timedreceive = 243,
+    SYS_mq_notify = 244,
+    SYS_mq_getsetattr = 245,
+    SYS_kexec_load = 246,
+    SYS_waitid = 247,
+    SYS_add_key = 248,
+    SYS_request_key = 249,
+    SYS_keyctl = 250,
+    SYS_ioprio_set = 251,
+    SYS_ioprio_get = 252,
+    SYS_inotify_init = 253,
+    SYS_inotify_add_watch = 254,
+    SYS_inotify_rm_watch = 255,
+    SYS_migrate_pages = 256,
+    SYS_openat = 257,
+    SYS_mkdirat = 258,
+    SYS_mknodat = 259,
+    SYS_fchownat = 260,
+    SYS_futimesat = 261,
+    SYS_newfstatat = 262,
+    SYS_unlinkat = 263,
+    SYS_renameat = 264,
+    SYS_linkat = 265,
+    SYS_symlinkat = 266,
+    SYS_readlinkat = 267,
+    SYS_fchmodat = 268,
+    SYS_faccessat = 269,
+    SYS_pselect6 = 270,
+    SYS_ppoll = 271,
+    SYS_unshare = 272,
+    SYS_set_robust_list = 273,
+    SYS_get_robust_list = 274,
+    SYS_splice = 275,
+    SYS_tee = 276,
+    SYS_sync_file_range = 277,
+    SYS_vmsplice = 278,
+    SYS_move_pages = 279,
+    SYS_utimensat = 280,
+    SYS_epoll_pwait = 281,
+    SYS_signalfd = 282,
+    SYS_timerfd_create = 283,
+    SYS_eventfd = 284,
+    SYS_fallocate = 285,
+    SYS_timerfd_settime = 286,
+    SYS_timerfd_gettime = 287,
+    SYS_accept4 = 288,
+    SYS_signalfd4 = 289,
+    SYS_eventfd2 = 290,
+    SYS_epoll_create1 = 291,
+    SYS_dup3 = 292,
+    SYS_pipe2 = 293,
+    SYS_inotify_init1 = 294,
+    SYS_preadv = 295,
+    SYS_pwritev = 296,
+    SYS_rt_tgsigqueueinfo = 297,
+    SYS_perf_event_open = 298,
+    SYS_recvmmsg = 299,
+    SYS_fanotify_init = 300,
+    SYS_fanotify_mark = 301,
+    SYS_prlimit64 = 302,
+    SYS_name_to_handle_at = 303,
+    SYS_open_by_handle_at = 304,
+    SYS_clock_adjtime = 305,
+    SYS_syncfs = 306,
+    SYS_sendmmsg = 307,
+    SYS_setns = 308,
+    SYS_getcpu = 309,
+    SYS_process_vm_readv = 310,
+    SYS_process_vm_writev = 311,
+    SYS_kcmp = 312,
+    SYS_finit_module = 313,
+    SYS_sched_setattr = 314,
+    SYS_sched_getattr = 315,
+    SYS_renameat2 = 316,
+    SYS_seccomp = 317,
+    SYS_getrandom = 318,
+    SYS_memfd_create = 319,
+    SYS_kexec_file_load = 320,
+    SYS_bpf = 321,
+    SYS_execveat = 322,
+    SYS_userfaultfd = 323,
+    SYS_membarrier = 324,
+    SYS_mlock2 = 325,
+    compat_SYS_rt_sigaction = 512,
+    compat_SYS_rt_sigreturn = 513,
+    compat_SYS_ioctl = 514,
+    compat_SYS_readv = 515,
+    compat_SYS_writev = 516,
+    compat_SYS_recvfrom = 517,
+    compat_SYS_sendmsg = 518,
+    compat_SYS_recvmsg = 519,
+    compat_SYS_execve = 520,
+    compat_SYS_ptrace = 521,
+    compat_SYS_rt_sigpending = 522,
+    compat_SYS_rt_sigtimedwait = 523,
+    compat_SYS_rt_sigqueueinfo = 524,
+    compat_SYS_sigaltstack = 525,
+    compat_SYS_timer_create = 526,
+    compat_SYS_mq_notify = 527,
+    compat_SYS_kexec_load = 528,
+    compat_SYS_waitid = 529,
+    compat_SYS_set_robust_list = 530,
+    compat_SYS_get_robust_list = 531,
+    compat_SYS_vmsplice = 532,
+    compat_SYS_move_pages = 533,
+    compat_SYS_preadv = 534,
+    compat_SYS_pwritev = 535,
+    compat_SYS_rt_tgsigqueueinfo = 536,
+    compat_SYS_recvmmsg = 537,
+    compat_SYS_sendmmsg = 538,
+    compat_SYS_process_vm_readv = 539,
+    compat_SYS_process_vm_writev = 540,
+    compat_SYS_setsockopt = 541,
+    compat_SYS_getsockopt = 542,
+    compat_SYS_io_setup = 543,
+    compat_SYS_io_submit = 544,
+    compat_SYS_execveat = 545,
+}