Optimize binary size of syscall tables
The syscall tables were implemented as an array of const char*
strings. Each of them required a relocation entry of 8 bytes each,
wasting both binary size and dirty memory at load time.
This CL stores the syscall table as a single string (per table)
separating each syscall with a \0, and an array of offsets into that
string.
On the standalone arm64 release build this saves
File size:
-65KB (before:1,034,864 after:969,328)
ELF sections:
.rela.dyn before:0x022d58 after:0x016f38 = -48K
.rodata before:0x00e34f after:0x00f36f = +4KB
.data.rel.ro before:0x015bf8 after:0x011c98 = -16KB
Bug: 321830256
Change-Id: I555588166b93053322448b962d52e2f4fdbff219
diff --git a/Android.bp b/Android.bp
index 2f1dc27..1577cdc 100644
--- a/Android.bp
+++ b/Android.bp
@@ -9918,6 +9918,14 @@
],
}
+// GN: //src/kernel_utils:unittests
+filegroup {
+ name: "perfetto_src_kernel_utils_unittests",
+ srcs: [
+ "src/kernel_utils/syscall_table_unittest.cc",
+ ],
+}
+
// GN: //src/perfetto_cmd:bugreport_path
filegroup {
name: "perfetto_src_perfetto_cmd_bugreport_path",
@@ -13494,6 +13502,7 @@
":perfetto_src_kallsyms_kallsyms",
":perfetto_src_kallsyms_unittests",
":perfetto_src_kernel_utils_syscall_table",
+ ":perfetto_src_kernel_utils_unittests",
":perfetto_src_perfetto_cmd_bugreport_path",
":perfetto_src_perfetto_cmd_pbtxt_to_pb",
":perfetto_src_perfetto_cmd_perfetto_cmd",
diff --git a/BUILD b/BUILD
index e38a6df..4deecb7 100644
--- a/BUILD
+++ b/BUILD
@@ -1099,11 +1099,7 @@
srcs = [
"src/kernel_utils/syscall_table.cc",
"src/kernel_utils/syscall_table.h",
- "src/kernel_utils/syscalls_aarch32.h",
- "src/kernel_utils/syscalls_aarch64.h",
- "src/kernel_utils/syscalls_armeabi.h",
- "src/kernel_utils/syscalls_x86.h",
- "src/kernel_utils/syscalls_x86_64.h",
+ "src/kernel_utils/syscall_table_generated.h",
],
)
diff --git a/gn/perfetto_unittests.gni b/gn/perfetto_unittests.gni
index a8f16a5..2769a63 100644
--- a/gn/perfetto_unittests.gni
+++ b/gn/perfetto_unittests.gni
@@ -48,6 +48,7 @@
perfetto_unittests_targets += [
"src/perfetto_cmd:unittests",
"src/traced/service:unittests",
+ "src/kernel_utils:unittests",
]
if (enable_perfetto_traced_probes) {
perfetto_unittests_targets += [
diff --git a/src/kernel_utils/BUILD.gn b/src/kernel_utils/BUILD.gn
index 9f136ac..9771580 100644
--- a/src/kernel_utils/BUILD.gn
+++ b/src/kernel_utils/BUILD.gn
@@ -12,6 +12,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+import("../../gn/test.gni")
+
source_set("syscall_table") {
deps = [
"../../gn:default_deps",
@@ -20,10 +22,17 @@
sources = [
"syscall_table.cc",
"syscall_table.h",
- "syscalls_aarch32.h",
- "syscalls_aarch64.h",
- "syscalls_armeabi.h",
- "syscalls_x86.h",
- "syscalls_x86_64.h",
+ "syscall_table_generated.h",
]
}
+
+perfetto_unittest_source_set("unittests") {
+ testonly = true
+ deps = [
+ ":syscall_table",
+ "../../gn:default_deps",
+ "../../gn:gtest_and_gmock",
+ "../base",
+ ]
+ sources = [ "syscall_table_unittest.cc" ]
+}
diff --git a/src/kernel_utils/syscall_table.cc b/src/kernel_utils/syscall_table.cc
index d5a6e23..eae0c4e 100644
--- a/src/kernel_utils/syscall_table.cc
+++ b/src/kernel_utils/syscall_table.cc
@@ -22,70 +22,51 @@
#include <sys/utsname.h>
#endif
-#include "src/kernel_utils/syscalls_aarch32.h"
-#include "src/kernel_utils/syscalls_aarch64.h"
-#include "src/kernel_utils/syscalls_armeabi.h"
-#include "src/kernel_utils/syscalls_x86.h"
-#include "src/kernel_utils/syscalls_x86_64.h"
+#include "src/kernel_utils/syscall_table_generated.h"
namespace perfetto {
-template <typename T>
-constexpr size_t GetSyscalls(const T&) {
- static_assert(std::extent<T>::value <= kMaxSyscalls,
- "kMaxSyscalls too small");
- return std::extent<T>::value;
-}
-
SyscallTable::SyscallTable(Architecture arch) {
- static const char* kSyscalls_Unknown[] = {nullptr};
-
switch (arch) {
- case kArmEabi:
- syscall_count_ = GetSyscalls(kSyscalls_ArmEabi);
- syscall_table_ = &kSyscalls_ArmEabi[0];
+ case Architecture::kArmEabi:
+ *this = SyscallTable::Load<SyscallTable_armeabi>();
break;
- case kAarch32:
- syscall_count_ = GetSyscalls(kSyscalls_Aarch32);
- syscall_table_ = &kSyscalls_Aarch32[0];
+ case Architecture::kAarch32:
+ *this = SyscallTable::Load<SyscallTable_aarch32>();
break;
- case kAarch64:
- syscall_count_ = GetSyscalls(kSyscalls_Aarch64);
- syscall_table_ = &kSyscalls_Aarch64[0];
+ case Architecture::kAarch64:
+ *this = SyscallTable::Load<SyscallTable_aarch64>();
break;
- case kX86_64:
- syscall_count_ = GetSyscalls(kSyscalls_x86_64);
- syscall_table_ = &kSyscalls_x86_64[0];
+ case Architecture::kX86_64:
+ *this = SyscallTable::Load<SyscallTable_x86_64>();
break;
- case kX86:
- syscall_count_ = GetSyscalls(kSyscalls_x86);
- syscall_table_ = &kSyscalls_x86[0];
+ case Architecture::kX86:
+ *this = SyscallTable::Load<SyscallTable_x86>();
break;
- case kUnknown:
- syscall_count_ = 0;
- syscall_table_ = &kSyscalls_Unknown[0];
+ case Architecture::kUnknown:
+ // The default field initializers take care of the null initialization.
break;
}
}
Architecture SyscallTable::ArchFromString(base::StringView machine) {
if (machine == "aarch64") {
- return kAarch64;
+ return Architecture::kAarch64;
} else if (machine == "armv8l") {
- return kArmEabi;
+ return Architecture::kArmEabi;
} else if (machine == "armv7l") {
- return kAarch32;
+ return Architecture::kAarch32;
} else if (machine == "x86_64") {
- return kX86_64;
+ return Architecture::kX86_64;
} else if (machine == "i686") {
- return kX86;
+ return Architecture::kX86;
} else {
- return kUnknown;
+ return Architecture::kUnknown;
}
}
SyscallTable SyscallTable::FromCurrentArch() {
- Architecture arch = kUnknown;
+ Architecture arch = Architecture::kUnknown;
#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \
PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID)
@@ -100,7 +81,7 @@
std::optional<size_t> SyscallTable::GetByName(const std::string& name) const {
for (size_t i = 0; i < syscall_count_; i++) {
- if (name == syscall_table_[i]) {
+ if (name == &syscall_names_[syscall_offsets_[i]]) {
return i;
}
}
@@ -109,7 +90,7 @@
const char* SyscallTable::GetById(size_t id) const {
if (id < syscall_count_) {
- return syscall_table_[id];
+ return &syscall_names_[syscall_offsets_[id]];
}
return nullptr;
}
diff --git a/src/kernel_utils/syscall_table.h b/src/kernel_utils/syscall_table.h
index c2ec4a5..339f15e 100644
--- a/src/kernel_utils/syscall_table.h
+++ b/src/kernel_utils/syscall_table.h
@@ -22,12 +22,13 @@
#include <string>
#include "perfetto/ext/base/string_view.h"
+#include "perfetto/ext/base/utils.h"
namespace perfetto {
static constexpr size_t kMaxSyscalls = 550;
-enum Architecture {
+enum class Architecture {
kUnknown = 0,
kArmEabi, // 32-bit kernel running a 32-bit process (most old devices).
kAarch32, // 64-bit kernel running a 32-bit process (should be rare).
@@ -38,11 +39,17 @@
class SyscallTable {
public:
- explicit SyscallTable(Architecture arch);
+ using OffT = uint16_t;
+ // Exposed for testing.
+ template <typename Table>
+ static SyscallTable Load() {
+ static_assert(base::ArraySize(Table::offsets) <= kMaxSyscalls,
+ "kMaxSyscalls too small");
+ return SyscallTable(Table::names, Table::offsets,
+ base::ArraySize(Table::offsets));
+ }
- // Use for testing.
- SyscallTable(const char* const* table, size_t count)
- : syscall_count_(count), syscall_table_(table) {}
+ explicit SyscallTable(Architecture arch);
// Return the architecture enum for the given uname machine string.
static Architecture ArchFromString(base::StringView machine);
@@ -60,8 +67,12 @@
const char* GetById(size_t id) const;
private:
- size_t syscall_count_;
- const char* const* syscall_table_;
+ SyscallTable(const char* names, const OffT* off, size_t count)
+ : syscall_names_(names), syscall_offsets_(off), syscall_count_(count) {}
+
+ const char* syscall_names_ = "";
+ const OffT* syscall_offsets_ = {};
+ size_t syscall_count_ = 0;
};
} // namespace perfetto
diff --git a/src/kernel_utils/syscall_table_generated.h b/src/kernel_utils/syscall_table_generated.h
new file mode 100644
index 0000000..cd53332
--- /dev/null
+++ b/src/kernel_utils/syscall_table_generated.h
@@ -0,0 +1,2484 @@
+// DO NOT EDIT. Auto-generated by tools/extract_linux_syscall_tables
+#ifndef SRC_KERNEL_UTILS_SYSCALL_TABLE_GENERATED_H_
+#define SRC_KERNEL_UTILS_SYSCALL_TABLE_GENERATED_H_
+
+#include <stdint.h>
+
+namespace perfetto {
+
+constexpr char kAllSyscalllNames[] =
+ "\0"
+ "sys__llseek\0"
+ "sys__newselect\0"
+ "sys__sysctl\0"
+ "sys_accept\0"
+ "sys_accept4\0"
+ "sys_access\0"
+ "sys_acct\0"
+ "sys_add_key\0"
+ "sys_adjtimex\0"
+ "sys_afs_syscall\0"
+ "sys_alarm\0"
+ "sys_arch_prctl\0"
+ "sys_arch_specific_syscall\0"
+ "sys_arm_fadvise64_64\0"
+ "sys_arm_sync_file_range\0"
+ "sys_bdflush\0"
+ "sys_bind\0"
+ "sys_bpf\0"
+ "sys_break\0"
+ "sys_brk\0"
+ "sys_capget\0"
+ "sys_capset\0"
+ "sys_chdir\0"
+ "sys_chmod\0"
+ "sys_chown\0"
+ "sys_chown32\0"
+ "sys_chroot\0"
+ "sys_clock_adjtime\0"
+ "sys_clock_getres\0"
+ "sys_clock_gettime\0"
+ "sys_clock_nanosleep\0"
+ "sys_clock_settime\0"
+ "sys_clone\0"
+ "sys_close\0"
+ "sys_connect\0"
+ "sys_copy_file_range\0"
+ "sys_creat\0"
+ "sys_create_module\0"
+ "sys_delete_module\0"
+ "sys_dup\0"
+ "sys_dup2\0"
+ "sys_dup3\0"
+ "sys_epoll_create\0"
+ "sys_epoll_create1\0"
+ "sys_epoll_ctl\0"
+ "sys_epoll_ctl_old\0"
+ "sys_epoll_pwait\0"
+ "sys_epoll_wait\0"
+ "sys_epoll_wait_old\0"
+ "sys_eventfd\0"
+ "sys_eventfd2\0"
+ "sys_execve\0"
+ "sys_execveat\0"
+ "sys_exit\0"
+ "sys_exit_group\0"
+ "sys_faccessat\0"
+ "sys_fadvise64\0"
+ "sys_fadvise64_64\0"
+ "sys_fallocate\0"
+ "sys_fanotify_init\0"
+ "sys_fanotify_mark\0"
+ "sys_fchdir\0"
+ "sys_fchmod\0"
+ "sys_fchmodat\0"
+ "sys_fchown\0"
+ "sys_fchown32\0"
+ "sys_fchownat\0"
+ "sys_fcntl\0"
+ "sys_fcntl64\0"
+ "sys_fdatasync\0"
+ "sys_fgetxattr\0"
+ "sys_finit_module\0"
+ "sys_flistxattr\0"
+ "sys_flock\0"
+ "sys_fork\0"
+ "sys_fremovexattr\0"
+ "sys_fsetxattr\0"
+ "sys_fstat\0"
+ "sys_fstat64\0"
+ "sys_fstatat\0"
+ "sys_fstatat64\0"
+ "sys_fstatfs\0"
+ "sys_fstatfs64\0"
+ "sys_fsync\0"
+ "sys_ftime\0"
+ "sys_ftruncate\0"
+ "sys_ftruncate64\0"
+ "sys_futex\0"
+ "sys_futimesat\0"
+ "sys_get_kernel_syms\0"
+ "sys_get_mempolicy\0"
+ "sys_get_robust_list\0"
+ "sys_get_thread_area\0"
+ "sys_getcpu\0"
+ "sys_getcwd\0"
+ "sys_getdents\0"
+ "sys_getdents64\0"
+ "sys_getegid\0"
+ "sys_getegid32\0"
+ "sys_geteuid\0"
+ "sys_geteuid32\0"
+ "sys_getgid\0"
+ "sys_getgid32\0"
+ "sys_getgroups\0"
+ "sys_getgroups32\0"
+ "sys_getitimer\0"
+ "sys_getpeername\0"
+ "sys_getpgid\0"
+ "sys_getpgrp\0"
+ "sys_getpid\0"
+ "sys_getpmsg\0"
+ "sys_getppid\0"
+ "sys_getpriority\0"
+ "sys_getrandom\0"
+ "sys_getresgid\0"
+ "sys_getresgid32\0"
+ "sys_getresuid\0"
+ "sys_getresuid32\0"
+ "sys_getrlimit\0"
+ "sys_getrusage\0"
+ "sys_getsid\0"
+ "sys_getsockname\0"
+ "sys_getsockopt\0"
+ "sys_gettid\0"
+ "sys_gettimeofday\0"
+ "sys_getuid\0"
+ "sys_getuid32\0"
+ "sys_getxattr\0"
+ "sys_gtty\0"
+ "sys_idle\0"
+ "sys_init_module\0"
+ "sys_inotify_add_watch\0"
+ "sys_inotify_init\0"
+ "sys_inotify_init1\0"
+ "sys_inotify_rm_watch\0"
+ "sys_io_cancel\0"
+ "sys_io_destroy\0"
+ "sys_io_getevents\0"
+ "sys_io_pgetevents\0"
+ "sys_io_setup\0"
+ "sys_io_submit\0"
+ "sys_ioctl\0"
+ "sys_ioperm\0"
+ "sys_iopl\0"
+ "sys_ioprio_get\0"
+ "sys_ioprio_set\0"
+ "sys_ipc\0"
+ "sys_kcmp\0"
+ "sys_kexec_file_load\0"
+ "sys_kexec_load\0"
+ "sys_keyctl\0"
+ "sys_kill\0"
+ "sys_lchown\0"
+ "sys_lchown32\0"
+ "sys_lgetxattr\0"
+ "sys_link\0"
+ "sys_linkat\0"
+ "sys_listen\0"
+ "sys_listxattr\0"
+ "sys_llistxattr\0"
+ "sys_lock\0"
+ "sys_lookup_dcookie\0"
+ "sys_lremovexattr\0"
+ "sys_lseek\0"
+ "sys_lsetxattr\0"
+ "sys_lstat\0"
+ "sys_lstat64\0"
+ "sys_madvise\0"
+ "sys_mbind\0"
+ "sys_membarrier\0"
+ "sys_memfd_create\0"
+ "sys_migrate_pages\0"
+ "sys_mincore\0"
+ "sys_mkdir\0"
+ "sys_mkdirat\0"
+ "sys_mknod\0"
+ "sys_mknodat\0"
+ "sys_mlock\0"
+ "sys_mlock2\0"
+ "sys_mlockall\0"
+ "sys_mmap\0"
+ "sys_mmap2\0"
+ "sys_modify_ldt\0"
+ "sys_mount\0"
+ "sys_move_pages\0"
+ "sys_mprotect\0"
+ "sys_mpx\0"
+ "sys_mq_getsetattr\0"
+ "sys_mq_notify\0"
+ "sys_mq_open\0"
+ "sys_mq_timedreceive\0"
+ "sys_mq_timedsend\0"
+ "sys_mq_unlink\0"
+ "sys_mremap\0"
+ "sys_msgctl\0"
+ "sys_msgget\0"
+ "sys_msgrcv\0"
+ "sys_msgsnd\0"
+ "sys_msync\0"
+ "sys_munlock\0"
+ "sys_munlockall\0"
+ "sys_munmap\0"
+ "sys_name_to_handle_at\0"
+ "sys_nanosleep\0"
+ "sys_newfstatat\0"
+ "sys_nfsservctl\0"
+ "sys_nice\0"
+ "sys_oldfstat\0"
+ "sys_oldlstat\0"
+ "sys_oldolduname\0"
+ "sys_oldstat\0"
+ "sys_olduname\0"
+ "sys_open\0"
+ "sys_open_by_handle_at\0"
+ "sys_openat\0"
+ "sys_pause\0"
+ "sys_pciconfig_iobase\0"
+ "sys_pciconfig_read\0"
+ "sys_pciconfig_write\0"
+ "sys_perf_event_open\0"
+ "sys_personality\0"
+ "sys_pipe\0"
+ "sys_pipe2\0"
+ "sys_pivot_root\0"
+ "sys_pkey_alloc\0"
+ "sys_pkey_free\0"
+ "sys_pkey_mprotect\0"
+ "sys_poll\0"
+ "sys_ppoll\0"
+ "sys_prctl\0"
+ "sys_pread64\0"
+ "sys_preadv\0"
+ "sys_preadv2\0"
+ "sys_prlimit64\0"
+ "sys_process_vm_readv\0"
+ "sys_process_vm_writev\0"
+ "sys_prof\0"
+ "sys_profil\0"
+ "sys_pselect6\0"
+ "sys_ptrace\0"
+ "sys_putpmsg\0"
+ "sys_pwrite64\0"
+ "sys_pwritev\0"
+ "sys_pwritev2\0"
+ "sys_query_module\0"
+ "sys_quotactl\0"
+ "sys_read\0"
+ "sys_readahead\0"
+ "sys_readdir\0"
+ "sys_readlink\0"
+ "sys_readlinkat\0"
+ "sys_readv\0"
+ "sys_reboot\0"
+ "sys_recv\0"
+ "sys_recvfrom\0"
+ "sys_recvmmsg\0"
+ "sys_recvmsg\0"
+ "sys_remap_file_pages\0"
+ "sys_removexattr\0"
+ "sys_rename\0"
+ "sys_renameat\0"
+ "sys_renameat2\0"
+ "sys_request_key\0"
+ "sys_restart_syscall\0"
+ "sys_rmdir\0"
+ "sys_rseq\0"
+ "sys_rt_sigaction\0"
+ "sys_rt_sigpending\0"
+ "sys_rt_sigprocmask\0"
+ "sys_rt_sigqueueinfo\0"
+ "sys_rt_sigreturn\0"
+ "sys_rt_sigsuspend\0"
+ "sys_rt_sigtimedwait\0"
+ "sys_rt_tgsigqueueinfo\0"
+ "sys_sched_get_priority_max\0"
+ "sys_sched_get_priority_min\0"
+ "sys_sched_getaffinity\0"
+ "sys_sched_getattr\0"
+ "sys_sched_getparam\0"
+ "sys_sched_getscheduler\0"
+ "sys_sched_rr_get_interval\0"
+ "sys_sched_setaffinity\0"
+ "sys_sched_setattr\0"
+ "sys_sched_setparam\0"
+ "sys_sched_setscheduler\0"
+ "sys_sched_yield\0"
+ "sys_seccomp\0"
+ "sys_security\0"
+ "sys_select\0"
+ "sys_semctl\0"
+ "sys_semget\0"
+ "sys_semop\0"
+ "sys_semtimedop\0"
+ "sys_send\0"
+ "sys_sendfile\0"
+ "sys_sendfile64\0"
+ "sys_sendmmsg\0"
+ "sys_sendmsg\0"
+ "sys_sendto\0"
+ "sys_set_mempolicy\0"
+ "sys_set_robust_list\0"
+ "sys_set_thread_area\0"
+ "sys_set_tid_address\0"
+ "sys_setdomainname\0"
+ "sys_setfsgid\0"
+ "sys_setfsgid32\0"
+ "sys_setfsuid\0"
+ "sys_setfsuid32\0"
+ "sys_setgid\0"
+ "sys_setgid32\0"
+ "sys_setgroups\0"
+ "sys_setgroups32\0"
+ "sys_sethostname\0"
+ "sys_setitimer\0"
+ "sys_setns\0"
+ "sys_setpgid\0"
+ "sys_setpriority\0"
+ "sys_setregid\0"
+ "sys_setregid32\0"
+ "sys_setresgid\0"
+ "sys_setresgid32\0"
+ "sys_setresuid\0"
+ "sys_setresuid32\0"
+ "sys_setreuid\0"
+ "sys_setreuid32\0"
+ "sys_setrlimit\0"
+ "sys_setsid\0"
+ "sys_setsockopt\0"
+ "sys_settimeofday\0"
+ "sys_setuid\0"
+ "sys_setuid32\0"
+ "sys_setxattr\0"
+ "sys_sgetmask\0"
+ "sys_shmat\0"
+ "sys_shmctl\0"
+ "sys_shmdt\0"
+ "sys_shmget\0"
+ "sys_shutdown\0"
+ "sys_sigaction\0"
+ "sys_sigaltstack\0"
+ "sys_signal\0"
+ "sys_signalfd\0"
+ "sys_signalfd4\0"
+ "sys_sigpending\0"
+ "sys_sigprocmask\0"
+ "sys_sigreturn\0"
+ "sys_sigsuspend\0"
+ "sys_socket\0"
+ "sys_socketcall\0"
+ "sys_socketpair\0"
+ "sys_splice\0"
+ "sys_ssetmask\0"
+ "sys_stat\0"
+ "sys_stat64\0"
+ "sys_statfs\0"
+ "sys_statfs64\0"
+ "sys_statx\0"
+ "sys_stime\0"
+ "sys_stty\0"
+ "sys_swapoff\0"
+ "sys_swapon\0"
+ "sys_symlink\0"
+ "sys_symlinkat\0"
+ "sys_sync\0"
+ "sys_sync_file_range\0"
+ "sys_sync_file_range2\0"
+ "sys_syncfs\0"
+ "sys_syscall\0"
+ "sys_sysfs\0"
+ "sys_sysinfo\0"
+ "sys_syslog\0"
+ "sys_tee\0"
+ "sys_tgkill\0"
+ "sys_time\0"
+ "sys_timer_create\0"
+ "sys_timer_delete\0"
+ "sys_timer_getoverrun\0"
+ "sys_timer_gettime\0"
+ "sys_timer_settime\0"
+ "sys_timerfd_create\0"
+ "sys_timerfd_gettime\0"
+ "sys_timerfd_settime\0"
+ "sys_times\0"
+ "sys_tkill\0"
+ "sys_truncate\0"
+ "sys_truncate64\0"
+ "sys_tuxcall\0"
+ "sys_ugetrlimit\0"
+ "sys_ulimit\0"
+ "sys_umask\0"
+ "sys_umount\0"
+ "sys_umount2\0"
+ "sys_uname\0"
+ "sys_unlink\0"
+ "sys_unlinkat\0"
+ "sys_unshare\0"
+ "sys_uselib\0"
+ "sys_userfaultfd\0"
+ "sys_ustat\0"
+ "sys_utime\0"
+ "sys_utimensat\0"
+ "sys_utimes\0"
+ "sys_vfork\0"
+ "sys_vhangup\0"
+ "sys_vm86\0"
+ "sys_vm86old\0"
+ "sys_vmsplice\0"
+ "sys_vserver\0"
+ "sys_wait4\0"
+ "sys_waitid\0"
+ "sys_waitpid\0"
+ "sys_write\0"
+ "sys_writev\0";
+
+struct SyscallTable_aarch32 {
+ static constexpr const char* names = kAllSyscalllNames;
+ static constexpr SyscallTable::OffT offsets[]{
+ 3544, // 0: sys_restart_syscall
+ 723, // 1: sys_exit
+ 1006, // 2: sys_fork
+ 3322, // 3: sys_read
+ 5639, // 4: sys_write
+ 2848, // 5: sys_open
+ 443, // 6: sys_close
+ 0, // 7:
+ 485, // 8: sys_creat
+ 2115, // 9: sys_link
+ 5430, // 10: sys_unlink
+ 699, // 11: sys_execve
+ 289, // 12: sys_chdir
+ 0, // 13:
+ 2372, // 14: sys_mknod
+ 299, // 15: sys_chmod
+ 2077, // 16: sys_lchown
+ 0, // 17:
+ 0, // 18:
+ 2220, // 19: sys_lseek
+ 1482, // 20: sys_getpid
+ 2462, // 21: sys_mount
+ 0, // 22:
+ 4597, // 23: sys_setuid
+ 1705, // 24: sys_getuid
+ 0, // 25:
+ 3231, // 26: sys_ptrace
+ 0, // 27:
+ 0, // 28:
+ 2890, // 29: sys_pause
+ 0, // 30:
+ 0, // 31:
+ 0, // 32:
+ 63, // 33: sys_access
+ 2772, // 34: sys_nice
+ 0, // 35:
+ 5017, // 36: sys_sync
+ 2068, // 37: sys_kill
+ 3490, // 38: sys_rename
+ 2350, // 39: sys_mkdir
+ 3564, // 40: sys_rmdir
+ 531, // 41: sys_dup
+ 2996, // 42: sys_pipe
+ 5301, // 43: sys_times
+ 0, // 44:
+ 259, // 45: sys_brk
+ 4302, // 46: sys_setgid
+ 1374, // 47: sys_getgid
+ 0, // 48:
+ 1348, // 49: sys_geteuid
+ 1322, // 50: sys_getegid
+ 74, // 51: sys_acct
+ 5408, // 52: sys_umount2
+ 0, // 53:
+ 1945, // 54: sys_ioctl
+ 914, // 55: sys_fcntl
+ 0, // 56:
+ 4396, // 57: sys_setpgid
+ 0, // 58:
+ 0, // 59:
+ 5387, // 60: sys_umask
+ 331, // 61: sys_chroot
+ 5493, // 62: sys_ustat
+ 539, // 63: sys_dup2
+ 1505, // 64: sys_getppid
+ 1470, // 65: sys_getpgrp
+ 4554, // 66: sys_setsid
+ 4702, // 67: sys_sigaction
+ 0, // 68:
+ 0, // 69:
+ 4512, // 70: sys_setreuid
+ 4424, // 71: sys_setregid
+ 4815, // 72: sys_sigsuspend
+ 4770, // 73: sys_sigpending
+ 4356, // 74: sys_sethostname
+ 4540, // 75: sys_setrlimit
+ 0, // 76:
+ 1621, // 77: sys_getrusage
+ 1688, // 78: sys_gettimeofday
+ 4580, // 79: sys_settimeofday
+ 1398, // 80: sys_getgroups
+ 4326, // 81: sys_setgroups
+ 0, // 82:
+ 4991, // 83: sys_symlink
+ 0, // 84:
+ 3357, // 85: sys_readlink
+ 5466, // 86: sys_uselib
+ 4980, // 87: sys_swapon
+ 3395, // 88: sys_reboot
+ 0, // 89:
+ 0, // 90:
+ 2695, // 91: sys_munmap
+ 5321, // 92: sys_truncate
+ 1140, // 93: sys_ftruncate
+ 853, // 94: sys_fchmod
+ 877, // 95: sys_fchown
+ 1517, // 96: sys_getpriority
+ 4408, // 97: sys_setpriority
+ 0, // 98:
+ 4915, // 99: sys_statfs
+ 1094, // 100: sys_fstatfs
+ 0, // 101:
+ 0, // 102:
+ 5112, // 103: sys_syslog
+ 4372, // 104: sys_setitimer
+ 1428, // 105: sys_getitimer
+ 4895, // 106: sys_stat
+ 2244, // 107: sys_lstat
+ 1046, // 108: sys_fstat
+ 0, // 109:
+ 0, // 110:
+ 5548, // 111: sys_vhangup
+ 0, // 112:
+ 0, // 113:
+ 5606, // 114: sys_wait4
+ 4968, // 115: sys_swapoff
+ 5100, // 116: sys_sysinfo
+ 0, // 117:
+ 1120, // 118: sys_fsync
+ 4801, // 119: sys_sigreturn
+ 433, // 120: sys_clone
+ 4228, // 121: sys_setdomainname
+ 5420, // 122: sys_uname
+ 0, // 123:
+ 95, // 124: sys_adjtimex
+ 2487, // 125: sys_mprotect
+ 4785, // 126: sys_sigprocmask
+ 0, // 127:
+ 1760, // 128: sys_init_module
+ 513, // 129: sys_delete_module
+ 0, // 130:
+ 3309, // 131: sys_quotactl
+ 1458, // 132: sys_getpgid
+ 842, // 133: sys_fchdir
+ 220, // 134: sys_bdflush
+ 5090, // 135: sys_sysfs
+ 2980, // 136: sys_personality
+ 0, // 137:
+ 4274, // 138: sys_setfsuid
+ 4246, // 139: sys_setfsgid
+ 1, // 140: sys__llseek
+ 1294, // 141: sys_getdents
+ 13, // 142: sys__newselect
+ 996, // 143: sys_flock
+ 2658, // 144: sys_msync
+ 3385, // 145: sys_readv
+ 5649, // 146: sys_writev
+ 1635, // 147: sys_getsid
+ 936, // 148: sys_fdatasync
+ 28, // 149: sys__sysctl
+ 2394, // 150: sys_mlock
+ 2668, // 151: sys_munlock
+ 2415, // 152: sys_mlockall
+ 2680, // 153: sys_munlockall
+ 3936, // 154: sys_sched_setparam
+ 3828, // 155: sys_sched_getparam
+ 3955, // 156: sys_sched_setscheduler
+ 3847, // 157: sys_sched_getscheduler
+ 3978, // 158: sys_sched_yield
+ 3734, // 159: sys_sched_get_priority_max
+ 3761, // 160: sys_sched_get_priority_min
+ 3870, // 161: sys_sched_rr_get_interval
+ 2728, // 162: sys_nanosleep
+ 2603, // 163: sys_mremap
+ 4482, // 164: sys_setresuid
+ 1577, // 165: sys_getresuid
+ 0, // 166:
+ 0, // 167:
+ 3077, // 168: sys_poll
+ 2757, // 169: sys_nfsservctl
+ 4452, // 170: sys_setresgid
+ 1547, // 171: sys_getresgid
+ 3096, // 172: sys_prctl
+ 3657, // 173: sys_rt_sigreturn
+ 3583, // 174: sys_rt_sigaction
+ 3618, // 175: sys_rt_sigprocmask
+ 3600, // 176: sys_rt_sigpending
+ 3692, // 177: sys_rt_sigtimedwait
+ 3637, // 178: sys_rt_sigqueueinfo
+ 3674, // 179: sys_rt_sigsuspend
+ 3106, // 180: sys_pread64
+ 3254, // 181: sys_pwrite64
+ 309, // 182: sys_chown
+ 1283, // 183: sys_getcwd
+ 267, // 184: sys_capget
+ 278, // 185: sys_capset
+ 4716, // 186: sys_sigaltstack
+ 4086, // 187: sys_sendfile
+ 0, // 188:
+ 0, // 189:
+ 5538, // 190: sys_vfork
+ 0, // 191:
+ 2437, // 192: sys_mmap2
+ 5334, // 193: sys_truncate64
+ 1154, // 194: sys_ftruncate64
+ 4904, // 195: sys_stat64
+ 2254, // 196: sys_lstat64
+ 1056, // 197: sys_fstat64
+ 2088, // 198: sys_lchown32
+ 1716, // 199: sys_getuid32
+ 1385, // 200: sys_getgid32
+ 1360, // 201: sys_geteuid32
+ 1334, // 202: sys_getegid32
+ 4525, // 203: sys_setreuid32
+ 4437, // 204: sys_setregid32
+ 1412, // 205: sys_getgroups32
+ 4340, // 206: sys_setgroups32
+ 888, // 207: sys_fchown32
+ 4496, // 208: sys_setresuid32
+ 1591, // 209: sys_getresuid32
+ 4466, // 210: sys_setresgid32
+ 1561, // 211: sys_getresgid32
+ 319, // 212: sys_chown32
+ 4608, // 213: sys_setuid32
+ 4313, // 214: sys_setgid32
+ 4287, // 215: sys_setfsuid32
+ 4259, // 216: sys_setfsgid32
+ 1307, // 217: sys_getdents64
+ 3015, // 218: sys_pivot_root
+ 2338, // 219: sys_mincore
+ 2266, // 220: sys_madvise
+ 924, // 221: sys_fcntl64
+ 0, // 222:
+ 0, // 223:
+ 1677, // 224: sys_gettid
+ 3331, // 225: sys_readahead
+ 4621, // 226: sys_setxattr
+ 2230, // 227: sys_lsetxattr
+ 1032, // 228: sys_fsetxattr
+ 1729, // 229: sys_getxattr
+ 2101, // 230: sys_lgetxattr
+ 950, // 231: sys_fgetxattr
+ 2146, // 232: sys_listxattr
+ 2160, // 233: sys_llistxattr
+ 981, // 234: sys_flistxattr
+ 3474, // 235: sys_removexattr
+ 2203, // 236: sys_lremovexattr
+ 1015, // 237: sys_fremovexattr
+ 5311, // 238: sys_tkill
+ 4099, // 239: sys_sendfile64
+ 1170, // 240: sys_futex
+ 3896, // 241: sys_sched_setaffinity
+ 3788, // 242: sys_sched_getaffinity
+ 1918, // 243: sys_io_setup
+ 1868, // 244: sys_io_destroy
+ 1883, // 245: sys_io_getevents
+ 1931, // 246: sys_io_submit
+ 1854, // 247: sys_io_cancel
+ 732, // 248: sys_exit_group
+ 2184, // 249: sys_lookup_dcookie
+ 557, // 250: sys_epoll_create
+ 592, // 251: sys_epoll_ctl
+ 640, // 252: sys_epoll_wait
+ 3453, // 253: sys_remap_file_pages
+ 0, // 254:
+ 0, // 255:
+ 4208, // 256: sys_set_tid_address
+ 5151, // 257: sys_timer_create
+ 5224, // 258: sys_timer_settime
+ 5206, // 259: sys_timer_gettime
+ 5185, // 260: sys_timer_getoverrun
+ 5168, // 261: sys_timer_delete
+ 415, // 262: sys_clock_settime
+ 377, // 263: sys_clock_gettime
+ 360, // 264: sys_clock_getres
+ 395, // 265: sys_clock_nanosleep
+ 4926, // 266: sys_statfs64
+ 1106, // 267: sys_fstatfs64
+ 5131, // 268: sys_tgkill
+ 5527, // 269: sys_utimes
+ 175, // 270: sys_arm_fadvise64_64
+ 2900, // 271: sys_pciconfig_iobase
+ 2921, // 272: sys_pciconfig_read
+ 2940, // 273: sys_pciconfig_write
+ 2540, // 274: sys_mq_open
+ 2589, // 275: sys_mq_unlink
+ 2572, // 276: sys_mq_timedsend
+ 2552, // 277: sys_mq_timedreceive
+ 2526, // 278: sys_mq_notify
+ 2508, // 279: sys_mq_getsetattr
+ 5616, // 280: sys_waitid
+ 4830, // 281: sys_socket
+ 232, // 282: sys_bind
+ 453, // 283: sys_connect
+ 2135, // 284: sys_listen
+ 40, // 285: sys_accept
+ 1646, // 286: sys_getsockname
+ 1442, // 287: sys_getpeername
+ 4856, // 288: sys_socketpair
+ 4077, // 289: sys_send
+ 4139, // 290: sys_sendto
+ 3406, // 291: sys_recv
+ 3415, // 292: sys_recvfrom
+ 4689, // 293: sys_shutdown
+ 4565, // 294: sys_setsockopt
+ 1662, // 295: sys_getsockopt
+ 4127, // 296: sys_sendmsg
+ 3441, // 297: sys_recvmsg
+ 4052, // 298: sys_semop
+ 4041, // 299: sys_semget
+ 4030, // 300: sys_semctl
+ 2647, // 301: sys_msgsnd
+ 2636, // 302: sys_msgrcv
+ 2625, // 303: sys_msgget
+ 2614, // 304: sys_msgctl
+ 4647, // 305: sys_shmat
+ 4668, // 306: sys_shmdt
+ 4678, // 307: sys_shmget
+ 4657, // 308: sys_shmctl
+ 83, // 309: sys_add_key
+ 3528, // 310: sys_request_key
+ 2057, // 311: sys_keyctl
+ 4062, // 312: sys_semtimedop
+ 5594, // 313: sys_vserver
+ 1990, // 314: sys_ioprio_set
+ 1975, // 315: sys_ioprio_get
+ 1798, // 316: sys_inotify_init
+ 1776, // 317: sys_inotify_add_watch
+ 1833, // 318: sys_inotify_rm_watch
+ 2278, // 319: sys_mbind
+ 1214, // 320: sys_get_mempolicy
+ 4150, // 321: sys_set_mempolicy
+ 2879, // 322: sys_openat
+ 2360, // 323: sys_mkdirat
+ 2382, // 324: sys_mknodat
+ 901, // 325: sys_fchownat
+ 1180, // 326: sys_futimesat
+ 1080, // 327: sys_fstatat64
+ 5441, // 328: sys_unlinkat
+ 3501, // 329: sys_renameat
+ 2124, // 330: sys_linkat
+ 5003, // 331: sys_symlinkat
+ 3370, // 332: sys_readlinkat
+ 864, // 333: sys_fchmodat
+ 747, // 334: sys_faccessat
+ 3218, // 335: sys_pselect6
+ 3086, // 336: sys_ppoll
+ 5454, // 337: sys_unshare
+ 4168, // 338: sys_set_robust_list
+ 1232, // 339: sys_get_robust_list
+ 4871, // 340: sys_splice
+ 5046, // 341: sys_sync_file_range2
+ 5123, // 342: sys_tee
+ 5581, // 343: sys_vmsplice
+ 2472, // 344: sys_move_pages
+ 1272, // 345: sys_getcpu
+ 624, // 346: sys_epoll_pwait
+ 2042, // 347: sys_kexec_load
+ 5513, // 348: sys_utimensat
+ 4743, // 349: sys_signalfd
+ 5242, // 350: sys_timerfd_create
+ 674, // 351: sys_eventfd
+ 792, // 352: sys_fallocate
+ 5281, // 353: sys_timerfd_settime
+ 5261, // 354: sys_timerfd_gettime
+ 4756, // 355: sys_signalfd4
+ 686, // 356: sys_eventfd2
+ 574, // 357: sys_epoll_create1
+ 548, // 358: sys_dup3
+ 3005, // 359: sys_pipe2
+ 1815, // 360: sys_inotify_init1
+ 3118, // 361: sys_preadv
+ 3267, // 362: sys_pwritev
+ 3712, // 363: sys_rt_tgsigqueueinfo
+ 2960, // 364: sys_perf_event_open
+ 3428, // 365: sys_recvmmsg
+ 51, // 366: sys_accept4
+ 806, // 367: sys_fanotify_init
+ 824, // 368: sys_fanotify_mark
+ 3141, // 369: sys_prlimit64
+ 2706, // 370: sys_name_to_handle_at
+ 2857, // 371: sys_open_by_handle_at
+ 342, // 372: sys_clock_adjtime
+ 5067, // 373: sys_syncfs
+ 4114, // 374: sys_sendmmsg
+ 4386, // 375: sys_setns
+ 3155, // 376: sys_process_vm_readv
+ 3176, // 377: sys_process_vm_writev
+ 2013, // 378: sys_kcmp
+ 964, // 379: sys_finit_module
+ 3918, // 380: sys_sched_setattr
+ 3810, // 381: sys_sched_getattr
+ 3514, // 382: sys_renameat2
+ 3994, // 383: sys_seccomp
+ 1533, // 384: sys_getrandom
+ 2303, // 385: sys_memfd_create
+ 241, // 386: sys_bpf
+ 710, // 387: sys_execveat
+ 5477, // 388: sys_userfaultfd
+ 2288, // 389: sys_membarrier
+ 2404, // 390: sys_mlock2
+ 465, // 391: sys_copy_file_range
+ 3129, // 392: sys_preadv2
+ 3279, // 393: sys_pwritev2
+ 3059, // 394: sys_pkey_mprotect
+ 3030, // 395: sys_pkey_alloc
+ 3045, // 396: sys_pkey_free
+ 4939, // 397: sys_statx
+ 3574, // 398: sys_rseq
+ };
+};
+
+struct SyscallTable_aarch64 {
+ static constexpr const char* names = kAllSyscalllNames;
+ static constexpr SyscallTable::OffT offsets[]{
+ 1918, // 0: sys_io_setup
+ 1868, // 1: sys_io_destroy
+ 1931, // 2: sys_io_submit
+ 1854, // 3: sys_io_cancel
+ 1883, // 4: sys_io_getevents
+ 4621, // 5: sys_setxattr
+ 2230, // 6: sys_lsetxattr
+ 1032, // 7: sys_fsetxattr
+ 1729, // 8: sys_getxattr
+ 2101, // 9: sys_lgetxattr
+ 950, // 10: sys_fgetxattr
+ 2146, // 11: sys_listxattr
+ 2160, // 12: sys_llistxattr
+ 981, // 13: sys_flistxattr
+ 3474, // 14: sys_removexattr
+ 2203, // 15: sys_lremovexattr
+ 1015, // 16: sys_fremovexattr
+ 1283, // 17: sys_getcwd
+ 2184, // 18: sys_lookup_dcookie
+ 686, // 19: sys_eventfd2
+ 574, // 20: sys_epoll_create1
+ 592, // 21: sys_epoll_ctl
+ 624, // 22: sys_epoll_pwait
+ 531, // 23: sys_dup
+ 548, // 24: sys_dup3
+ 914, // 25: sys_fcntl
+ 1815, // 26: sys_inotify_init1
+ 1776, // 27: sys_inotify_add_watch
+ 1833, // 28: sys_inotify_rm_watch
+ 1945, // 29: sys_ioctl
+ 1990, // 30: sys_ioprio_set
+ 1975, // 31: sys_ioprio_get
+ 996, // 32: sys_flock
+ 2382, // 33: sys_mknodat
+ 2360, // 34: sys_mkdirat
+ 5441, // 35: sys_unlinkat
+ 5003, // 36: sys_symlinkat
+ 2124, // 37: sys_linkat
+ 3501, // 38: sys_renameat
+ 5408, // 39: sys_umount2
+ 2462, // 40: sys_mount
+ 3015, // 41: sys_pivot_root
+ 2757, // 42: sys_nfsservctl
+ 4915, // 43: sys_statfs
+ 1094, // 44: sys_fstatfs
+ 5321, // 45: sys_truncate
+ 1140, // 46: sys_ftruncate
+ 792, // 47: sys_fallocate
+ 747, // 48: sys_faccessat
+ 289, // 49: sys_chdir
+ 842, // 50: sys_fchdir
+ 331, // 51: sys_chroot
+ 853, // 52: sys_fchmod
+ 864, // 53: sys_fchmodat
+ 901, // 54: sys_fchownat
+ 877, // 55: sys_fchown
+ 2879, // 56: sys_openat
+ 443, // 57: sys_close
+ 5548, // 58: sys_vhangup
+ 3005, // 59: sys_pipe2
+ 3309, // 60: sys_quotactl
+ 1307, // 61: sys_getdents64
+ 2220, // 62: sys_lseek
+ 3322, // 63: sys_read
+ 5639, // 64: sys_write
+ 3385, // 65: sys_readv
+ 5649, // 66: sys_writev
+ 3106, // 67: sys_pread64
+ 3254, // 68: sys_pwrite64
+ 3118, // 69: sys_preadv
+ 3267, // 70: sys_pwritev
+ 4086, // 71: sys_sendfile
+ 3218, // 72: sys_pselect6
+ 3086, // 73: sys_ppoll
+ 4756, // 74: sys_signalfd4
+ 5581, // 75: sys_vmsplice
+ 4871, // 76: sys_splice
+ 5123, // 77: sys_tee
+ 3370, // 78: sys_readlinkat
+ 1068, // 79: sys_fstatat
+ 1046, // 80: sys_fstat
+ 5017, // 81: sys_sync
+ 1120, // 82: sys_fsync
+ 936, // 83: sys_fdatasync
+ 5026, // 84: sys_sync_file_range
+ 5242, // 85: sys_timerfd_create
+ 5281, // 86: sys_timerfd_settime
+ 5261, // 87: sys_timerfd_gettime
+ 5513, // 88: sys_utimensat
+ 74, // 89: sys_acct
+ 267, // 90: sys_capget
+ 278, // 91: sys_capset
+ 2980, // 92: sys_personality
+ 723, // 93: sys_exit
+ 732, // 94: sys_exit_group
+ 5616, // 95: sys_waitid
+ 4208, // 96: sys_set_tid_address
+ 5454, // 97: sys_unshare
+ 1170, // 98: sys_futex
+ 4168, // 99: sys_set_robust_list
+ 1232, // 100: sys_get_robust_list
+ 2728, // 101: sys_nanosleep
+ 1428, // 102: sys_getitimer
+ 4372, // 103: sys_setitimer
+ 2042, // 104: sys_kexec_load
+ 1760, // 105: sys_init_module
+ 513, // 106: sys_delete_module
+ 5151, // 107: sys_timer_create
+ 5206, // 108: sys_timer_gettime
+ 5185, // 109: sys_timer_getoverrun
+ 5224, // 110: sys_timer_settime
+ 5168, // 111: sys_timer_delete
+ 415, // 112: sys_clock_settime
+ 377, // 113: sys_clock_gettime
+ 360, // 114: sys_clock_getres
+ 395, // 115: sys_clock_nanosleep
+ 5112, // 116: sys_syslog
+ 3231, // 117: sys_ptrace
+ 3936, // 118: sys_sched_setparam
+ 3955, // 119: sys_sched_setscheduler
+ 3847, // 120: sys_sched_getscheduler
+ 3828, // 121: sys_sched_getparam
+ 3896, // 122: sys_sched_setaffinity
+ 3788, // 123: sys_sched_getaffinity
+ 3978, // 124: sys_sched_yield
+ 3734, // 125: sys_sched_get_priority_max
+ 3761, // 126: sys_sched_get_priority_min
+ 3870, // 127: sys_sched_rr_get_interval
+ 3544, // 128: sys_restart_syscall
+ 2068, // 129: sys_kill
+ 5311, // 130: sys_tkill
+ 5131, // 131: sys_tgkill
+ 4716, // 132: sys_sigaltstack
+ 3674, // 133: sys_rt_sigsuspend
+ 3583, // 134: sys_rt_sigaction
+ 3618, // 135: sys_rt_sigprocmask
+ 3600, // 136: sys_rt_sigpending
+ 3692, // 137: sys_rt_sigtimedwait
+ 3637, // 138: sys_rt_sigqueueinfo
+ 3657, // 139: sys_rt_sigreturn
+ 4408, // 140: sys_setpriority
+ 1517, // 141: sys_getpriority
+ 3395, // 142: sys_reboot
+ 4424, // 143: sys_setregid
+ 4302, // 144: sys_setgid
+ 4512, // 145: sys_setreuid
+ 4597, // 146: sys_setuid
+ 4482, // 147: sys_setresuid
+ 1577, // 148: sys_getresuid
+ 4452, // 149: sys_setresgid
+ 1547, // 150: sys_getresgid
+ 4274, // 151: sys_setfsuid
+ 4246, // 152: sys_setfsgid
+ 5301, // 153: sys_times
+ 4396, // 154: sys_setpgid
+ 1458, // 155: sys_getpgid
+ 1635, // 156: sys_getsid
+ 4554, // 157: sys_setsid
+ 1398, // 158: sys_getgroups
+ 4326, // 159: sys_setgroups
+ 5420, // 160: sys_uname
+ 4356, // 161: sys_sethostname
+ 4228, // 162: sys_setdomainname
+ 1607, // 163: sys_getrlimit
+ 4540, // 164: sys_setrlimit
+ 1621, // 165: sys_getrusage
+ 5387, // 166: sys_umask
+ 3096, // 167: sys_prctl
+ 1272, // 168: sys_getcpu
+ 1688, // 169: sys_gettimeofday
+ 4580, // 170: sys_settimeofday
+ 95, // 171: sys_adjtimex
+ 1482, // 172: sys_getpid
+ 1505, // 173: sys_getppid
+ 1705, // 174: sys_getuid
+ 1348, // 175: sys_geteuid
+ 1374, // 176: sys_getgid
+ 1322, // 177: sys_getegid
+ 1677, // 178: sys_gettid
+ 5100, // 179: sys_sysinfo
+ 2540, // 180: sys_mq_open
+ 2589, // 181: sys_mq_unlink
+ 2572, // 182: sys_mq_timedsend
+ 2552, // 183: sys_mq_timedreceive
+ 2526, // 184: sys_mq_notify
+ 2508, // 185: sys_mq_getsetattr
+ 2625, // 186: sys_msgget
+ 2614, // 187: sys_msgctl
+ 2636, // 188: sys_msgrcv
+ 2647, // 189: sys_msgsnd
+ 4041, // 190: sys_semget
+ 4030, // 191: sys_semctl
+ 4062, // 192: sys_semtimedop
+ 4052, // 193: sys_semop
+ 4678, // 194: sys_shmget
+ 4657, // 195: sys_shmctl
+ 4647, // 196: sys_shmat
+ 4668, // 197: sys_shmdt
+ 4830, // 198: sys_socket
+ 4856, // 199: sys_socketpair
+ 232, // 200: sys_bind
+ 2135, // 201: sys_listen
+ 40, // 202: sys_accept
+ 453, // 203: sys_connect
+ 1646, // 204: sys_getsockname
+ 1442, // 205: sys_getpeername
+ 4139, // 206: sys_sendto
+ 3415, // 207: sys_recvfrom
+ 4565, // 208: sys_setsockopt
+ 1662, // 209: sys_getsockopt
+ 4689, // 210: sys_shutdown
+ 4127, // 211: sys_sendmsg
+ 3441, // 212: sys_recvmsg
+ 3331, // 213: sys_readahead
+ 259, // 214: sys_brk
+ 2695, // 215: sys_munmap
+ 2603, // 216: sys_mremap
+ 83, // 217: sys_add_key
+ 3528, // 218: sys_request_key
+ 2057, // 219: sys_keyctl
+ 433, // 220: sys_clone
+ 699, // 221: sys_execve
+ 2428, // 222: sys_mmap
+ 761, // 223: sys_fadvise64
+ 4980, // 224: sys_swapon
+ 4968, // 225: sys_swapoff
+ 2487, // 226: sys_mprotect
+ 2658, // 227: sys_msync
+ 2394, // 228: sys_mlock
+ 2668, // 229: sys_munlock
+ 2415, // 230: sys_mlockall
+ 2680, // 231: sys_munlockall
+ 2338, // 232: sys_mincore
+ 2266, // 233: sys_madvise
+ 3453, // 234: sys_remap_file_pages
+ 2278, // 235: sys_mbind
+ 1214, // 236: sys_get_mempolicy
+ 4150, // 237: sys_set_mempolicy
+ 2320, // 238: sys_migrate_pages
+ 2472, // 239: sys_move_pages
+ 3712, // 240: sys_rt_tgsigqueueinfo
+ 2960, // 241: sys_perf_event_open
+ 51, // 242: sys_accept4
+ 3428, // 243: sys_recvmmsg
+ 149, // 244: sys_arch_specific_syscall
+ 0, // 245:
+ 0, // 246:
+ 0, // 247:
+ 0, // 248:
+ 0, // 249:
+ 0, // 250:
+ 0, // 251:
+ 0, // 252:
+ 0, // 253:
+ 0, // 254:
+ 0, // 255:
+ 0, // 256:
+ 0, // 257:
+ 0, // 258:
+ 0, // 259:
+ 5606, // 260: sys_wait4
+ 3141, // 261: sys_prlimit64
+ 806, // 262: sys_fanotify_init
+ 824, // 263: sys_fanotify_mark
+ 2706, // 264: sys_name_to_handle_at
+ 2857, // 265: sys_open_by_handle_at
+ 342, // 266: sys_clock_adjtime
+ 5067, // 267: sys_syncfs
+ 4386, // 268: sys_setns
+ 4114, // 269: sys_sendmmsg
+ 3155, // 270: sys_process_vm_readv
+ 3176, // 271: sys_process_vm_writev
+ 2013, // 272: sys_kcmp
+ 964, // 273: sys_finit_module
+ 3918, // 274: sys_sched_setattr
+ 3810, // 275: sys_sched_getattr
+ 3514, // 276: sys_renameat2
+ 3994, // 277: sys_seccomp
+ 1533, // 278: sys_getrandom
+ 2303, // 279: sys_memfd_create
+ 241, // 280: sys_bpf
+ 710, // 281: sys_execveat
+ 5477, // 282: sys_userfaultfd
+ 2288, // 283: sys_membarrier
+ 2404, // 284: sys_mlock2
+ 465, // 285: sys_copy_file_range
+ 3129, // 286: sys_preadv2
+ 3279, // 287: sys_pwritev2
+ 3059, // 288: sys_pkey_mprotect
+ 3030, // 289: sys_pkey_alloc
+ 3045, // 290: sys_pkey_free
+ 4939, // 291: sys_statx
+ 1900, // 292: sys_io_pgetevents
+ 3574, // 293: sys_rseq
+ };
+};
+
+struct SyscallTable_armeabi {
+ static constexpr const char* names = kAllSyscalllNames;
+ static constexpr SyscallTable::OffT offsets[]{
+ 3544, // 0: sys_restart_syscall
+ 723, // 1: sys_exit
+ 1006, // 2: sys_fork
+ 3322, // 3: sys_read
+ 5639, // 4: sys_write
+ 2848, // 5: sys_open
+ 443, // 6: sys_close
+ 0, // 7:
+ 485, // 8: sys_creat
+ 2115, // 9: sys_link
+ 5430, // 10: sys_unlink
+ 699, // 11: sys_execve
+ 289, // 12: sys_chdir
+ 5142, // 13: sys_time
+ 2372, // 14: sys_mknod
+ 299, // 15: sys_chmod
+ 2077, // 16: sys_lchown
+ 0, // 17:
+ 0, // 18:
+ 2220, // 19: sys_lseek
+ 1482, // 20: sys_getpid
+ 2462, // 21: sys_mount
+ 5397, // 22: sys_umount
+ 4597, // 23: sys_setuid
+ 1705, // 24: sys_getuid
+ 4949, // 25: sys_stime
+ 3231, // 26: sys_ptrace
+ 124, // 27: sys_alarm
+ 0, // 28:
+ 2890, // 29: sys_pause
+ 5503, // 30: sys_utime
+ 0, // 31:
+ 0, // 32:
+ 63, // 33: sys_access
+ 2772, // 34: sys_nice
+ 0, // 35:
+ 5017, // 36: sys_sync
+ 2068, // 37: sys_kill
+ 3490, // 38: sys_rename
+ 2350, // 39: sys_mkdir
+ 3564, // 40: sys_rmdir
+ 531, // 41: sys_dup
+ 2996, // 42: sys_pipe
+ 5301, // 43: sys_times
+ 0, // 44:
+ 259, // 45: sys_brk
+ 4302, // 46: sys_setgid
+ 1374, // 47: sys_getgid
+ 0, // 48:
+ 1348, // 49: sys_geteuid
+ 1322, // 50: sys_getegid
+ 74, // 51: sys_acct
+ 5408, // 52: sys_umount2
+ 0, // 53:
+ 1945, // 54: sys_ioctl
+ 914, // 55: sys_fcntl
+ 0, // 56:
+ 4396, // 57: sys_setpgid
+ 0, // 58:
+ 0, // 59:
+ 5387, // 60: sys_umask
+ 331, // 61: sys_chroot
+ 5493, // 62: sys_ustat
+ 539, // 63: sys_dup2
+ 1505, // 64: sys_getppid
+ 1470, // 65: sys_getpgrp
+ 4554, // 66: sys_setsid
+ 4702, // 67: sys_sigaction
+ 0, // 68:
+ 0, // 69:
+ 4512, // 70: sys_setreuid
+ 4424, // 71: sys_setregid
+ 4815, // 72: sys_sigsuspend
+ 4770, // 73: sys_sigpending
+ 4356, // 74: sys_sethostname
+ 4540, // 75: sys_setrlimit
+ 1607, // 76: sys_getrlimit
+ 1621, // 77: sys_getrusage
+ 1688, // 78: sys_gettimeofday
+ 4580, // 79: sys_settimeofday
+ 1398, // 80: sys_getgroups
+ 4326, // 81: sys_setgroups
+ 4019, // 82: sys_select
+ 4991, // 83: sys_symlink
+ 0, // 84:
+ 3357, // 85: sys_readlink
+ 5466, // 86: sys_uselib
+ 4980, // 87: sys_swapon
+ 3395, // 88: sys_reboot
+ 3345, // 89: sys_readdir
+ 2428, // 90: sys_mmap
+ 2695, // 91: sys_munmap
+ 5321, // 92: sys_truncate
+ 1140, // 93: sys_ftruncate
+ 853, // 94: sys_fchmod
+ 877, // 95: sys_fchown
+ 1517, // 96: sys_getpriority
+ 4408, // 97: sys_setpriority
+ 0, // 98:
+ 4915, // 99: sys_statfs
+ 1094, // 100: sys_fstatfs
+ 0, // 101:
+ 4841, // 102: sys_socketcall
+ 5112, // 103: sys_syslog
+ 4372, // 104: sys_setitimer
+ 1428, // 105: sys_getitimer
+ 4895, // 106: sys_stat
+ 2244, // 107: sys_lstat
+ 1046, // 108: sys_fstat
+ 0, // 109:
+ 0, // 110:
+ 5548, // 111: sys_vhangup
+ 0, // 112:
+ 5078, // 113: sys_syscall
+ 5606, // 114: sys_wait4
+ 4968, // 115: sys_swapoff
+ 5100, // 116: sys_sysinfo
+ 2005, // 117: sys_ipc
+ 1120, // 118: sys_fsync
+ 4801, // 119: sys_sigreturn
+ 433, // 120: sys_clone
+ 4228, // 121: sys_setdomainname
+ 5420, // 122: sys_uname
+ 0, // 123:
+ 95, // 124: sys_adjtimex
+ 2487, // 125: sys_mprotect
+ 4785, // 126: sys_sigprocmask
+ 0, // 127:
+ 1760, // 128: sys_init_module
+ 513, // 129: sys_delete_module
+ 0, // 130:
+ 3309, // 131: sys_quotactl
+ 1458, // 132: sys_getpgid
+ 842, // 133: sys_fchdir
+ 220, // 134: sys_bdflush
+ 5090, // 135: sys_sysfs
+ 2980, // 136: sys_personality
+ 0, // 137:
+ 4274, // 138: sys_setfsuid
+ 4246, // 139: sys_setfsgid
+ 1, // 140: sys__llseek
+ 1294, // 141: sys_getdents
+ 13, // 142: sys__newselect
+ 996, // 143: sys_flock
+ 2658, // 144: sys_msync
+ 3385, // 145: sys_readv
+ 5649, // 146: sys_writev
+ 1635, // 147: sys_getsid
+ 936, // 148: sys_fdatasync
+ 28, // 149: sys__sysctl
+ 2394, // 150: sys_mlock
+ 2668, // 151: sys_munlock
+ 2415, // 152: sys_mlockall
+ 2680, // 153: sys_munlockall
+ 3936, // 154: sys_sched_setparam
+ 3828, // 155: sys_sched_getparam
+ 3955, // 156: sys_sched_setscheduler
+ 3847, // 157: sys_sched_getscheduler
+ 3978, // 158: sys_sched_yield
+ 3734, // 159: sys_sched_get_priority_max
+ 3761, // 160: sys_sched_get_priority_min
+ 3870, // 161: sys_sched_rr_get_interval
+ 2728, // 162: sys_nanosleep
+ 2603, // 163: sys_mremap
+ 4482, // 164: sys_setresuid
+ 1577, // 165: sys_getresuid
+ 0, // 166:
+ 0, // 167:
+ 3077, // 168: sys_poll
+ 2757, // 169: sys_nfsservctl
+ 4452, // 170: sys_setresgid
+ 1547, // 171: sys_getresgid
+ 3096, // 172: sys_prctl
+ 3657, // 173: sys_rt_sigreturn
+ 3583, // 174: sys_rt_sigaction
+ 3618, // 175: sys_rt_sigprocmask
+ 3600, // 176: sys_rt_sigpending
+ 3692, // 177: sys_rt_sigtimedwait
+ 3637, // 178: sys_rt_sigqueueinfo
+ 3674, // 179: sys_rt_sigsuspend
+ 3106, // 180: sys_pread64
+ 3254, // 181: sys_pwrite64
+ 309, // 182: sys_chown
+ 1283, // 183: sys_getcwd
+ 267, // 184: sys_capget
+ 278, // 185: sys_capset
+ 4716, // 186: sys_sigaltstack
+ 4086, // 187: sys_sendfile
+ 0, // 188:
+ 0, // 189:
+ 5538, // 190: sys_vfork
+ 5361, // 191: sys_ugetrlimit
+ 2437, // 192: sys_mmap2
+ 5334, // 193: sys_truncate64
+ 1154, // 194: sys_ftruncate64
+ 4904, // 195: sys_stat64
+ 2254, // 196: sys_lstat64
+ 1056, // 197: sys_fstat64
+ 2088, // 198: sys_lchown32
+ 1716, // 199: sys_getuid32
+ 1385, // 200: sys_getgid32
+ 1360, // 201: sys_geteuid32
+ 1334, // 202: sys_getegid32
+ 4525, // 203: sys_setreuid32
+ 4437, // 204: sys_setregid32
+ 1412, // 205: sys_getgroups32
+ 4340, // 206: sys_setgroups32
+ 888, // 207: sys_fchown32
+ 4496, // 208: sys_setresuid32
+ 1591, // 209: sys_getresuid32
+ 4466, // 210: sys_setresgid32
+ 1561, // 211: sys_getresgid32
+ 319, // 212: sys_chown32
+ 4608, // 213: sys_setuid32
+ 4313, // 214: sys_setgid32
+ 4287, // 215: sys_setfsuid32
+ 4259, // 216: sys_setfsgid32
+ 1307, // 217: sys_getdents64
+ 3015, // 218: sys_pivot_root
+ 2338, // 219: sys_mincore
+ 2266, // 220: sys_madvise
+ 924, // 221: sys_fcntl64
+ 0, // 222:
+ 0, // 223:
+ 1677, // 224: sys_gettid
+ 3331, // 225: sys_readahead
+ 4621, // 226: sys_setxattr
+ 2230, // 227: sys_lsetxattr
+ 1032, // 228: sys_fsetxattr
+ 1729, // 229: sys_getxattr
+ 2101, // 230: sys_lgetxattr
+ 950, // 231: sys_fgetxattr
+ 2146, // 232: sys_listxattr
+ 2160, // 233: sys_llistxattr
+ 981, // 234: sys_flistxattr
+ 3474, // 235: sys_removexattr
+ 2203, // 236: sys_lremovexattr
+ 1015, // 237: sys_fremovexattr
+ 5311, // 238: sys_tkill
+ 4099, // 239: sys_sendfile64
+ 1170, // 240: sys_futex
+ 3896, // 241: sys_sched_setaffinity
+ 3788, // 242: sys_sched_getaffinity
+ 1918, // 243: sys_io_setup
+ 1868, // 244: sys_io_destroy
+ 1883, // 245: sys_io_getevents
+ 1931, // 246: sys_io_submit
+ 1854, // 247: sys_io_cancel
+ 732, // 248: sys_exit_group
+ 2184, // 249: sys_lookup_dcookie
+ 557, // 250: sys_epoll_create
+ 592, // 251: sys_epoll_ctl
+ 640, // 252: sys_epoll_wait
+ 3453, // 253: sys_remap_file_pages
+ 0, // 254:
+ 0, // 255:
+ 4208, // 256: sys_set_tid_address
+ 5151, // 257: sys_timer_create
+ 5224, // 258: sys_timer_settime
+ 5206, // 259: sys_timer_gettime
+ 5185, // 260: sys_timer_getoverrun
+ 5168, // 261: sys_timer_delete
+ 415, // 262: sys_clock_settime
+ 377, // 263: sys_clock_gettime
+ 360, // 264: sys_clock_getres
+ 395, // 265: sys_clock_nanosleep
+ 4926, // 266: sys_statfs64
+ 1106, // 267: sys_fstatfs64
+ 5131, // 268: sys_tgkill
+ 5527, // 269: sys_utimes
+ 175, // 270: sys_arm_fadvise64_64
+ 2900, // 271: sys_pciconfig_iobase
+ 2921, // 272: sys_pciconfig_read
+ 2940, // 273: sys_pciconfig_write
+ 2540, // 274: sys_mq_open
+ 2589, // 275: sys_mq_unlink
+ 2572, // 276: sys_mq_timedsend
+ 2552, // 277: sys_mq_timedreceive
+ 2526, // 278: sys_mq_notify
+ 2508, // 279: sys_mq_getsetattr
+ 5616, // 280: sys_waitid
+ 4830, // 281: sys_socket
+ 232, // 282: sys_bind
+ 453, // 283: sys_connect
+ 2135, // 284: sys_listen
+ 40, // 285: sys_accept
+ 1646, // 286: sys_getsockname
+ 1442, // 287: sys_getpeername
+ 4856, // 288: sys_socketpair
+ 4077, // 289: sys_send
+ 4139, // 290: sys_sendto
+ 3406, // 291: sys_recv
+ 3415, // 292: sys_recvfrom
+ 4689, // 293: sys_shutdown
+ 4565, // 294: sys_setsockopt
+ 1662, // 295: sys_getsockopt
+ 4127, // 296: sys_sendmsg
+ 3441, // 297: sys_recvmsg
+ 4052, // 298: sys_semop
+ 4041, // 299: sys_semget
+ 4030, // 300: sys_semctl
+ 2647, // 301: sys_msgsnd
+ 2636, // 302: sys_msgrcv
+ 2625, // 303: sys_msgget
+ 2614, // 304: sys_msgctl
+ 4647, // 305: sys_shmat
+ 4668, // 306: sys_shmdt
+ 4678, // 307: sys_shmget
+ 4657, // 308: sys_shmctl
+ 83, // 309: sys_add_key
+ 3528, // 310: sys_request_key
+ 2057, // 311: sys_keyctl
+ 4062, // 312: sys_semtimedop
+ 5594, // 313: sys_vserver
+ 1990, // 314: sys_ioprio_set
+ 1975, // 315: sys_ioprio_get
+ 1798, // 316: sys_inotify_init
+ 1776, // 317: sys_inotify_add_watch
+ 1833, // 318: sys_inotify_rm_watch
+ 2278, // 319: sys_mbind
+ 1214, // 320: sys_get_mempolicy
+ 4150, // 321: sys_set_mempolicy
+ 2879, // 322: sys_openat
+ 2360, // 323: sys_mkdirat
+ 2382, // 324: sys_mknodat
+ 901, // 325: sys_fchownat
+ 1180, // 326: sys_futimesat
+ 1080, // 327: sys_fstatat64
+ 5441, // 328: sys_unlinkat
+ 3501, // 329: sys_renameat
+ 2124, // 330: sys_linkat
+ 5003, // 331: sys_symlinkat
+ 3370, // 332: sys_readlinkat
+ 864, // 333: sys_fchmodat
+ 747, // 334: sys_faccessat
+ 3218, // 335: sys_pselect6
+ 3086, // 336: sys_ppoll
+ 5454, // 337: sys_unshare
+ 4168, // 338: sys_set_robust_list
+ 1232, // 339: sys_get_robust_list
+ 4871, // 340: sys_splice
+ 196, // 341: sys_arm_sync_file_range
+ 5123, // 342: sys_tee
+ 5581, // 343: sys_vmsplice
+ 2472, // 344: sys_move_pages
+ 1272, // 345: sys_getcpu
+ 624, // 346: sys_epoll_pwait
+ 2042, // 347: sys_kexec_load
+ 5513, // 348: sys_utimensat
+ 4743, // 349: sys_signalfd
+ 5242, // 350: sys_timerfd_create
+ 674, // 351: sys_eventfd
+ 792, // 352: sys_fallocate
+ 5281, // 353: sys_timerfd_settime
+ 5261, // 354: sys_timerfd_gettime
+ 4756, // 355: sys_signalfd4
+ 686, // 356: sys_eventfd2
+ 574, // 357: sys_epoll_create1
+ 548, // 358: sys_dup3
+ 3005, // 359: sys_pipe2
+ 1815, // 360: sys_inotify_init1
+ 3118, // 361: sys_preadv
+ 3267, // 362: sys_pwritev
+ 3712, // 363: sys_rt_tgsigqueueinfo
+ 2960, // 364: sys_perf_event_open
+ 3428, // 365: sys_recvmmsg
+ 51, // 366: sys_accept4
+ 806, // 367: sys_fanotify_init
+ 824, // 368: sys_fanotify_mark
+ 3141, // 369: sys_prlimit64
+ 2706, // 370: sys_name_to_handle_at
+ 2857, // 371: sys_open_by_handle_at
+ 342, // 372: sys_clock_adjtime
+ 5067, // 373: sys_syncfs
+ 4114, // 374: sys_sendmmsg
+ 4386, // 375: sys_setns
+ 3155, // 376: sys_process_vm_readv
+ 3176, // 377: sys_process_vm_writev
+ 2013, // 378: sys_kcmp
+ 964, // 379: sys_finit_module
+ 3918, // 380: sys_sched_setattr
+ 3810, // 381: sys_sched_getattr
+ 3514, // 382: sys_renameat2
+ 3994, // 383: sys_seccomp
+ 1533, // 384: sys_getrandom
+ 2303, // 385: sys_memfd_create
+ 241, // 386: sys_bpf
+ 710, // 387: sys_execveat
+ 5477, // 388: sys_userfaultfd
+ 2288, // 389: sys_membarrier
+ 2404, // 390: sys_mlock2
+ 465, // 391: sys_copy_file_range
+ 3129, // 392: sys_preadv2
+ 3279, // 393: sys_pwritev2
+ 3059, // 394: sys_pkey_mprotect
+ 3030, // 395: sys_pkey_alloc
+ 3045, // 396: sys_pkey_free
+ 4939, // 397: sys_statx
+ 3574, // 398: sys_rseq
+ 1900, // 399: sys_io_pgetevents
+ };
+};
+
+struct SyscallTable_x86 {
+ static constexpr const char* names = kAllSyscalllNames;
+ static constexpr SyscallTable::OffT offsets[]{
+ 3544, // 0: sys_restart_syscall
+ 723, // 1: sys_exit
+ 1006, // 2: sys_fork
+ 3322, // 3: sys_read
+ 5639, // 4: sys_write
+ 2848, // 5: sys_open
+ 443, // 6: sys_close
+ 5627, // 7: sys_waitpid
+ 485, // 8: sys_creat
+ 2115, // 9: sys_link
+ 5430, // 10: sys_unlink
+ 699, // 11: sys_execve
+ 289, // 12: sys_chdir
+ 5142, // 13: sys_time
+ 2372, // 14: sys_mknod
+ 299, // 15: sys_chmod
+ 2077, // 16: sys_lchown
+ 249, // 17: sys_break
+ 2823, // 18: sys_oldstat
+ 2220, // 19: sys_lseek
+ 1482, // 20: sys_getpid
+ 2462, // 21: sys_mount
+ 5397, // 22: sys_umount
+ 4597, // 23: sys_setuid
+ 1705, // 24: sys_getuid
+ 4949, // 25: sys_stime
+ 3231, // 26: sys_ptrace
+ 124, // 27: sys_alarm
+ 2781, // 28: sys_oldfstat
+ 2890, // 29: sys_pause
+ 5503, // 30: sys_utime
+ 4959, // 31: sys_stty
+ 1742, // 32: sys_gtty
+ 63, // 33: sys_access
+ 2772, // 34: sys_nice
+ 1130, // 35: sys_ftime
+ 5017, // 36: sys_sync
+ 2068, // 37: sys_kill
+ 3490, // 38: sys_rename
+ 2350, // 39: sys_mkdir
+ 3564, // 40: sys_rmdir
+ 531, // 41: sys_dup
+ 2996, // 42: sys_pipe
+ 5301, // 43: sys_times
+ 3198, // 44: sys_prof
+ 259, // 45: sys_brk
+ 4302, // 46: sys_setgid
+ 1374, // 47: sys_getgid
+ 4732, // 48: sys_signal
+ 1348, // 49: sys_geteuid
+ 1322, // 50: sys_getegid
+ 74, // 51: sys_acct
+ 5408, // 52: sys_umount2
+ 2175, // 53: sys_lock
+ 1945, // 54: sys_ioctl
+ 914, // 55: sys_fcntl
+ 2500, // 56: sys_mpx
+ 4396, // 57: sys_setpgid
+ 5376, // 58: sys_ulimit
+ 2807, // 59: sys_oldolduname
+ 5387, // 60: sys_umask
+ 331, // 61: sys_chroot
+ 5493, // 62: sys_ustat
+ 539, // 63: sys_dup2
+ 1505, // 64: sys_getppid
+ 1470, // 65: sys_getpgrp
+ 4554, // 66: sys_setsid
+ 4702, // 67: sys_sigaction
+ 4634, // 68: sys_sgetmask
+ 4882, // 69: sys_ssetmask
+ 4512, // 70: sys_setreuid
+ 4424, // 71: sys_setregid
+ 4815, // 72: sys_sigsuspend
+ 4770, // 73: sys_sigpending
+ 4356, // 74: sys_sethostname
+ 4540, // 75: sys_setrlimit
+ 1607, // 76: sys_getrlimit
+ 1621, // 77: sys_getrusage
+ 1688, // 78: sys_gettimeofday
+ 4580, // 79: sys_settimeofday
+ 1398, // 80: sys_getgroups
+ 4326, // 81: sys_setgroups
+ 4019, // 82: sys_select
+ 4991, // 83: sys_symlink
+ 2794, // 84: sys_oldlstat
+ 3357, // 85: sys_readlink
+ 5466, // 86: sys_uselib
+ 4980, // 87: sys_swapon
+ 3395, // 88: sys_reboot
+ 3345, // 89: sys_readdir
+ 2428, // 90: sys_mmap
+ 2695, // 91: sys_munmap
+ 5321, // 92: sys_truncate
+ 1140, // 93: sys_ftruncate
+ 853, // 94: sys_fchmod
+ 877, // 95: sys_fchown
+ 1517, // 96: sys_getpriority
+ 4408, // 97: sys_setpriority
+ 3207, // 98: sys_profil
+ 4915, // 99: sys_statfs
+ 1094, // 100: sys_fstatfs
+ 1955, // 101: sys_ioperm
+ 4841, // 102: sys_socketcall
+ 5112, // 103: sys_syslog
+ 4372, // 104: sys_setitimer
+ 1428, // 105: sys_getitimer
+ 4895, // 106: sys_stat
+ 2244, // 107: sys_lstat
+ 1046, // 108: sys_fstat
+ 2835, // 109: sys_olduname
+ 1966, // 110: sys_iopl
+ 5548, // 111: sys_vhangup
+ 1751, // 112: sys_idle
+ 5569, // 113: sys_vm86old
+ 5606, // 114: sys_wait4
+ 4968, // 115: sys_swapoff
+ 5100, // 116: sys_sysinfo
+ 2005, // 117: sys_ipc
+ 1120, // 118: sys_fsync
+ 4801, // 119: sys_sigreturn
+ 433, // 120: sys_clone
+ 4228, // 121: sys_setdomainname
+ 5420, // 122: sys_uname
+ 2447, // 123: sys_modify_ldt
+ 95, // 124: sys_adjtimex
+ 2487, // 125: sys_mprotect
+ 4785, // 126: sys_sigprocmask
+ 495, // 127: sys_create_module
+ 1760, // 128: sys_init_module
+ 513, // 129: sys_delete_module
+ 1194, // 130: sys_get_kernel_syms
+ 3309, // 131: sys_quotactl
+ 1458, // 132: sys_getpgid
+ 842, // 133: sys_fchdir
+ 220, // 134: sys_bdflush
+ 5090, // 135: sys_sysfs
+ 2980, // 136: sys_personality
+ 108, // 137: sys_afs_syscall
+ 4274, // 138: sys_setfsuid
+ 4246, // 139: sys_setfsgid
+ 1, // 140: sys__llseek
+ 1294, // 141: sys_getdents
+ 13, // 142: sys__newselect
+ 996, // 143: sys_flock
+ 2658, // 144: sys_msync
+ 3385, // 145: sys_readv
+ 5649, // 146: sys_writev
+ 1635, // 147: sys_getsid
+ 936, // 148: sys_fdatasync
+ 28, // 149: sys__sysctl
+ 2394, // 150: sys_mlock
+ 2668, // 151: sys_munlock
+ 2415, // 152: sys_mlockall
+ 2680, // 153: sys_munlockall
+ 3936, // 154: sys_sched_setparam
+ 3828, // 155: sys_sched_getparam
+ 3955, // 156: sys_sched_setscheduler
+ 3847, // 157: sys_sched_getscheduler
+ 3978, // 158: sys_sched_yield
+ 3734, // 159: sys_sched_get_priority_max
+ 3761, // 160: sys_sched_get_priority_min
+ 3870, // 161: sys_sched_rr_get_interval
+ 2728, // 162: sys_nanosleep
+ 2603, // 163: sys_mremap
+ 4482, // 164: sys_setresuid
+ 1577, // 165: sys_getresuid
+ 5560, // 166: sys_vm86
+ 3292, // 167: sys_query_module
+ 3077, // 168: sys_poll
+ 2757, // 169: sys_nfsservctl
+ 4452, // 170: sys_setresgid
+ 1547, // 171: sys_getresgid
+ 3096, // 172: sys_prctl
+ 3657, // 173: sys_rt_sigreturn
+ 3583, // 174: sys_rt_sigaction
+ 3618, // 175: sys_rt_sigprocmask
+ 3600, // 176: sys_rt_sigpending
+ 3692, // 177: sys_rt_sigtimedwait
+ 3637, // 178: sys_rt_sigqueueinfo
+ 3674, // 179: sys_rt_sigsuspend
+ 3106, // 180: sys_pread64
+ 3254, // 181: sys_pwrite64
+ 309, // 182: sys_chown
+ 1283, // 183: sys_getcwd
+ 267, // 184: sys_capget
+ 278, // 185: sys_capset
+ 4716, // 186: sys_sigaltstack
+ 4086, // 187: sys_sendfile
+ 1493, // 188: sys_getpmsg
+ 3242, // 189: sys_putpmsg
+ 5538, // 190: sys_vfork
+ 5361, // 191: sys_ugetrlimit
+ 2437, // 192: sys_mmap2
+ 5334, // 193: sys_truncate64
+ 1154, // 194: sys_ftruncate64
+ 4904, // 195: sys_stat64
+ 2254, // 196: sys_lstat64
+ 1056, // 197: sys_fstat64
+ 2088, // 198: sys_lchown32
+ 1716, // 199: sys_getuid32
+ 1385, // 200: sys_getgid32
+ 1360, // 201: sys_geteuid32
+ 1334, // 202: sys_getegid32
+ 4525, // 203: sys_setreuid32
+ 4437, // 204: sys_setregid32
+ 1412, // 205: sys_getgroups32
+ 4340, // 206: sys_setgroups32
+ 888, // 207: sys_fchown32
+ 4496, // 208: sys_setresuid32
+ 1591, // 209: sys_getresuid32
+ 4466, // 210: sys_setresgid32
+ 1561, // 211: sys_getresgid32
+ 319, // 212: sys_chown32
+ 4608, // 213: sys_setuid32
+ 4313, // 214: sys_setgid32
+ 4287, // 215: sys_setfsuid32
+ 4259, // 216: sys_setfsgid32
+ 3015, // 217: sys_pivot_root
+ 2338, // 218: sys_mincore
+ 2266, // 219: sys_madvise
+ 1307, // 220: sys_getdents64
+ 924, // 221: sys_fcntl64
+ 0, // 222:
+ 0, // 223:
+ 1677, // 224: sys_gettid
+ 3331, // 225: sys_readahead
+ 4621, // 226: sys_setxattr
+ 2230, // 227: sys_lsetxattr
+ 1032, // 228: sys_fsetxattr
+ 1729, // 229: sys_getxattr
+ 2101, // 230: sys_lgetxattr
+ 950, // 231: sys_fgetxattr
+ 2146, // 232: sys_listxattr
+ 2160, // 233: sys_llistxattr
+ 981, // 234: sys_flistxattr
+ 3474, // 235: sys_removexattr
+ 2203, // 236: sys_lremovexattr
+ 1015, // 237: sys_fremovexattr
+ 5311, // 238: sys_tkill
+ 4099, // 239: sys_sendfile64
+ 1170, // 240: sys_futex
+ 3896, // 241: sys_sched_setaffinity
+ 3788, // 242: sys_sched_getaffinity
+ 4188, // 243: sys_set_thread_area
+ 1252, // 244: sys_get_thread_area
+ 1918, // 245: sys_io_setup
+ 1868, // 246: sys_io_destroy
+ 1883, // 247: sys_io_getevents
+ 1931, // 248: sys_io_submit
+ 1854, // 249: sys_io_cancel
+ 761, // 250: sys_fadvise64
+ 0, // 251:
+ 732, // 252: sys_exit_group
+ 2184, // 253: sys_lookup_dcookie
+ 557, // 254: sys_epoll_create
+ 592, // 255: sys_epoll_ctl
+ 640, // 256: sys_epoll_wait
+ 3453, // 257: sys_remap_file_pages
+ 4208, // 258: sys_set_tid_address
+ 5151, // 259: sys_timer_create
+ 5224, // 260: sys_timer_settime
+ 5206, // 261: sys_timer_gettime
+ 5185, // 262: sys_timer_getoverrun
+ 5168, // 263: sys_timer_delete
+ 415, // 264: sys_clock_settime
+ 377, // 265: sys_clock_gettime
+ 360, // 266: sys_clock_getres
+ 395, // 267: sys_clock_nanosleep
+ 4926, // 268: sys_statfs64
+ 1106, // 269: sys_fstatfs64
+ 5131, // 270: sys_tgkill
+ 5527, // 271: sys_utimes
+ 775, // 272: sys_fadvise64_64
+ 5594, // 273: sys_vserver
+ 2278, // 274: sys_mbind
+ 1214, // 275: sys_get_mempolicy
+ 4150, // 276: sys_set_mempolicy
+ 2540, // 277: sys_mq_open
+ 2589, // 278: sys_mq_unlink
+ 2572, // 279: sys_mq_timedsend
+ 2552, // 280: sys_mq_timedreceive
+ 2526, // 281: sys_mq_notify
+ 2508, // 282: sys_mq_getsetattr
+ 2042, // 283: sys_kexec_load
+ 5616, // 284: sys_waitid
+ 0, // 285:
+ 83, // 286: sys_add_key
+ 3528, // 287: sys_request_key
+ 2057, // 288: sys_keyctl
+ 1990, // 289: sys_ioprio_set
+ 1975, // 290: sys_ioprio_get
+ 1798, // 291: sys_inotify_init
+ 1776, // 292: sys_inotify_add_watch
+ 1833, // 293: sys_inotify_rm_watch
+ 2320, // 294: sys_migrate_pages
+ 2879, // 295: sys_openat
+ 2360, // 296: sys_mkdirat
+ 2382, // 297: sys_mknodat
+ 901, // 298: sys_fchownat
+ 1180, // 299: sys_futimesat
+ 1080, // 300: sys_fstatat64
+ 5441, // 301: sys_unlinkat
+ 3501, // 302: sys_renameat
+ 2124, // 303: sys_linkat
+ 5003, // 304: sys_symlinkat
+ 3370, // 305: sys_readlinkat
+ 864, // 306: sys_fchmodat
+ 747, // 307: sys_faccessat
+ 3218, // 308: sys_pselect6
+ 3086, // 309: sys_ppoll
+ 5454, // 310: sys_unshare
+ 4168, // 311: sys_set_robust_list
+ 1232, // 312: sys_get_robust_list
+ 4871, // 313: sys_splice
+ 5026, // 314: sys_sync_file_range
+ 5123, // 315: sys_tee
+ 5581, // 316: sys_vmsplice
+ 2472, // 317: sys_move_pages
+ 1272, // 318: sys_getcpu
+ 624, // 319: sys_epoll_pwait
+ 5513, // 320: sys_utimensat
+ 4743, // 321: sys_signalfd
+ 5242, // 322: sys_timerfd_create
+ 674, // 323: sys_eventfd
+ 792, // 324: sys_fallocate
+ 5281, // 325: sys_timerfd_settime
+ 5261, // 326: sys_timerfd_gettime
+ 4756, // 327: sys_signalfd4
+ 686, // 328: sys_eventfd2
+ 574, // 329: sys_epoll_create1
+ 548, // 330: sys_dup3
+ 3005, // 331: sys_pipe2
+ 1815, // 332: sys_inotify_init1
+ 3118, // 333: sys_preadv
+ 3267, // 334: sys_pwritev
+ 3712, // 335: sys_rt_tgsigqueueinfo
+ 2960, // 336: sys_perf_event_open
+ 3428, // 337: sys_recvmmsg
+ 806, // 338: sys_fanotify_init
+ 824, // 339: sys_fanotify_mark
+ 3141, // 340: sys_prlimit64
+ 2706, // 341: sys_name_to_handle_at
+ 2857, // 342: sys_open_by_handle_at
+ 342, // 343: sys_clock_adjtime
+ 5067, // 344: sys_syncfs
+ 4114, // 345: sys_sendmmsg
+ 4386, // 346: sys_setns
+ 3155, // 347: sys_process_vm_readv
+ 3176, // 348: sys_process_vm_writev
+ 2013, // 349: sys_kcmp
+ 964, // 350: sys_finit_module
+ 3918, // 351: sys_sched_setattr
+ 3810, // 352: sys_sched_getattr
+ 3514, // 353: sys_renameat2
+ 3994, // 354: sys_seccomp
+ 1533, // 355: sys_getrandom
+ 2303, // 356: sys_memfd_create
+ 241, // 357: sys_bpf
+ 710, // 358: sys_execveat
+ 4830, // 359: sys_socket
+ 4856, // 360: sys_socketpair
+ 232, // 361: sys_bind
+ 453, // 362: sys_connect
+ 2135, // 363: sys_listen
+ 51, // 364: sys_accept4
+ 1662, // 365: sys_getsockopt
+ 4565, // 366: sys_setsockopt
+ 1646, // 367: sys_getsockname
+ 1442, // 368: sys_getpeername
+ 4139, // 369: sys_sendto
+ 4127, // 370: sys_sendmsg
+ 3415, // 371: sys_recvfrom
+ 3441, // 372: sys_recvmsg
+ 4689, // 373: sys_shutdown
+ 5477, // 374: sys_userfaultfd
+ 2288, // 375: sys_membarrier
+ 2404, // 376: sys_mlock2
+ 465, // 377: sys_copy_file_range
+ 3129, // 378: sys_preadv2
+ 3279, // 379: sys_pwritev2
+ 3059, // 380: sys_pkey_mprotect
+ 3030, // 381: sys_pkey_alloc
+ 3045, // 382: sys_pkey_free
+ 4939, // 383: sys_statx
+ 134, // 384: sys_arch_prctl
+ 1900, // 385: sys_io_pgetevents
+ 3574, // 386: sys_rseq
+ };
+};
+
+struct SyscallTable_x86_64 {
+ static constexpr const char* names = kAllSyscalllNames;
+ static constexpr SyscallTable::OffT offsets[]{
+ 3322, // 0: sys_read
+ 5639, // 1: sys_write
+ 2848, // 2: sys_open
+ 443, // 3: sys_close
+ 4895, // 4: sys_stat
+ 1046, // 5: sys_fstat
+ 2244, // 6: sys_lstat
+ 3077, // 7: sys_poll
+ 2220, // 8: sys_lseek
+ 2428, // 9: sys_mmap
+ 2487, // 10: sys_mprotect
+ 2695, // 11: sys_munmap
+ 259, // 12: sys_brk
+ 3583, // 13: sys_rt_sigaction
+ 3618, // 14: sys_rt_sigprocmask
+ 3657, // 15: sys_rt_sigreturn
+ 1945, // 16: sys_ioctl
+ 3106, // 17: sys_pread64
+ 3254, // 18: sys_pwrite64
+ 3385, // 19: sys_readv
+ 5649, // 20: sys_writev
+ 63, // 21: sys_access
+ 2996, // 22: sys_pipe
+ 4019, // 23: sys_select
+ 3978, // 24: sys_sched_yield
+ 2603, // 25: sys_mremap
+ 2658, // 26: sys_msync
+ 2338, // 27: sys_mincore
+ 2266, // 28: sys_madvise
+ 4678, // 29: sys_shmget
+ 4647, // 30: sys_shmat
+ 4657, // 31: sys_shmctl
+ 531, // 32: sys_dup
+ 539, // 33: sys_dup2
+ 2890, // 34: sys_pause
+ 2728, // 35: sys_nanosleep
+ 1428, // 36: sys_getitimer
+ 124, // 37: sys_alarm
+ 4372, // 38: sys_setitimer
+ 1482, // 39: sys_getpid
+ 4086, // 40: sys_sendfile
+ 4830, // 41: sys_socket
+ 453, // 42: sys_connect
+ 40, // 43: sys_accept
+ 4139, // 44: sys_sendto
+ 3415, // 45: sys_recvfrom
+ 4127, // 46: sys_sendmsg
+ 3441, // 47: sys_recvmsg
+ 4689, // 48: sys_shutdown
+ 232, // 49: sys_bind
+ 2135, // 50: sys_listen
+ 1646, // 51: sys_getsockname
+ 1442, // 52: sys_getpeername
+ 4856, // 53: sys_socketpair
+ 4565, // 54: sys_setsockopt
+ 1662, // 55: sys_getsockopt
+ 433, // 56: sys_clone
+ 1006, // 57: sys_fork
+ 5538, // 58: sys_vfork
+ 699, // 59: sys_execve
+ 723, // 60: sys_exit
+ 5606, // 61: sys_wait4
+ 2068, // 62: sys_kill
+ 5420, // 63: sys_uname
+ 4041, // 64: sys_semget
+ 4052, // 65: sys_semop
+ 4030, // 66: sys_semctl
+ 4668, // 67: sys_shmdt
+ 2625, // 68: sys_msgget
+ 2647, // 69: sys_msgsnd
+ 2636, // 70: sys_msgrcv
+ 2614, // 71: sys_msgctl
+ 914, // 72: sys_fcntl
+ 996, // 73: sys_flock
+ 1120, // 74: sys_fsync
+ 936, // 75: sys_fdatasync
+ 5321, // 76: sys_truncate
+ 1140, // 77: sys_ftruncate
+ 1294, // 78: sys_getdents
+ 1283, // 79: sys_getcwd
+ 289, // 80: sys_chdir
+ 842, // 81: sys_fchdir
+ 3490, // 82: sys_rename
+ 2350, // 83: sys_mkdir
+ 3564, // 84: sys_rmdir
+ 485, // 85: sys_creat
+ 2115, // 86: sys_link
+ 5430, // 87: sys_unlink
+ 4991, // 88: sys_symlink
+ 3357, // 89: sys_readlink
+ 299, // 90: sys_chmod
+ 853, // 91: sys_fchmod
+ 309, // 92: sys_chown
+ 877, // 93: sys_fchown
+ 2077, // 94: sys_lchown
+ 5387, // 95: sys_umask
+ 1688, // 96: sys_gettimeofday
+ 1607, // 97: sys_getrlimit
+ 1621, // 98: sys_getrusage
+ 5100, // 99: sys_sysinfo
+ 5301, // 100: sys_times
+ 3231, // 101: sys_ptrace
+ 1705, // 102: sys_getuid
+ 5112, // 103: sys_syslog
+ 1374, // 104: sys_getgid
+ 4597, // 105: sys_setuid
+ 4302, // 106: sys_setgid
+ 1348, // 107: sys_geteuid
+ 1322, // 108: sys_getegid
+ 4396, // 109: sys_setpgid
+ 1505, // 110: sys_getppid
+ 1470, // 111: sys_getpgrp
+ 4554, // 112: sys_setsid
+ 4512, // 113: sys_setreuid
+ 4424, // 114: sys_setregid
+ 1398, // 115: sys_getgroups
+ 4326, // 116: sys_setgroups
+ 4482, // 117: sys_setresuid
+ 1577, // 118: sys_getresuid
+ 4452, // 119: sys_setresgid
+ 1547, // 120: sys_getresgid
+ 1458, // 121: sys_getpgid
+ 4274, // 122: sys_setfsuid
+ 4246, // 123: sys_setfsgid
+ 1635, // 124: sys_getsid
+ 267, // 125: sys_capget
+ 278, // 126: sys_capset
+ 3600, // 127: sys_rt_sigpending
+ 3692, // 128: sys_rt_sigtimedwait
+ 3637, // 129: sys_rt_sigqueueinfo
+ 3674, // 130: sys_rt_sigsuspend
+ 4716, // 131: sys_sigaltstack
+ 5503, // 132: sys_utime
+ 2372, // 133: sys_mknod
+ 5466, // 134: sys_uselib
+ 2980, // 135: sys_personality
+ 5493, // 136: sys_ustat
+ 4915, // 137: sys_statfs
+ 1094, // 138: sys_fstatfs
+ 5090, // 139: sys_sysfs
+ 1517, // 140: sys_getpriority
+ 4408, // 141: sys_setpriority
+ 3936, // 142: sys_sched_setparam
+ 3828, // 143: sys_sched_getparam
+ 3955, // 144: sys_sched_setscheduler
+ 3847, // 145: sys_sched_getscheduler
+ 3734, // 146: sys_sched_get_priority_max
+ 3761, // 147: sys_sched_get_priority_min
+ 3870, // 148: sys_sched_rr_get_interval
+ 2394, // 149: sys_mlock
+ 2668, // 150: sys_munlock
+ 2415, // 151: sys_mlockall
+ 2680, // 152: sys_munlockall
+ 5548, // 153: sys_vhangup
+ 2447, // 154: sys_modify_ldt
+ 3015, // 155: sys_pivot_root
+ 28, // 156: sys__sysctl
+ 3096, // 157: sys_prctl
+ 134, // 158: sys_arch_prctl
+ 95, // 159: sys_adjtimex
+ 4540, // 160: sys_setrlimit
+ 331, // 161: sys_chroot
+ 5017, // 162: sys_sync
+ 74, // 163: sys_acct
+ 4580, // 164: sys_settimeofday
+ 2462, // 165: sys_mount
+ 5408, // 166: sys_umount2
+ 4980, // 167: sys_swapon
+ 4968, // 168: sys_swapoff
+ 3395, // 169: sys_reboot
+ 4356, // 170: sys_sethostname
+ 4228, // 171: sys_setdomainname
+ 1966, // 172: sys_iopl
+ 1955, // 173: sys_ioperm
+ 495, // 174: sys_create_module
+ 1760, // 175: sys_init_module
+ 513, // 176: sys_delete_module
+ 1194, // 177: sys_get_kernel_syms
+ 3292, // 178: sys_query_module
+ 3309, // 179: sys_quotactl
+ 2757, // 180: sys_nfsservctl
+ 1493, // 181: sys_getpmsg
+ 3242, // 182: sys_putpmsg
+ 108, // 183: sys_afs_syscall
+ 5349, // 184: sys_tuxcall
+ 4006, // 185: sys_security
+ 1677, // 186: sys_gettid
+ 3331, // 187: sys_readahead
+ 4621, // 188: sys_setxattr
+ 2230, // 189: sys_lsetxattr
+ 1032, // 190: sys_fsetxattr
+ 1729, // 191: sys_getxattr
+ 2101, // 192: sys_lgetxattr
+ 950, // 193: sys_fgetxattr
+ 2146, // 194: sys_listxattr
+ 2160, // 195: sys_llistxattr
+ 981, // 196: sys_flistxattr
+ 3474, // 197: sys_removexattr
+ 2203, // 198: sys_lremovexattr
+ 1015, // 199: sys_fremovexattr
+ 5311, // 200: sys_tkill
+ 5142, // 201: sys_time
+ 1170, // 202: sys_futex
+ 3896, // 203: sys_sched_setaffinity
+ 3788, // 204: sys_sched_getaffinity
+ 4188, // 205: sys_set_thread_area
+ 1918, // 206: sys_io_setup
+ 1868, // 207: sys_io_destroy
+ 1883, // 208: sys_io_getevents
+ 1931, // 209: sys_io_submit
+ 1854, // 210: sys_io_cancel
+ 1252, // 211: sys_get_thread_area
+ 2184, // 212: sys_lookup_dcookie
+ 557, // 213: sys_epoll_create
+ 606, // 214: sys_epoll_ctl_old
+ 655, // 215: sys_epoll_wait_old
+ 3453, // 216: sys_remap_file_pages
+ 1307, // 217: sys_getdents64
+ 4208, // 218: sys_set_tid_address
+ 3544, // 219: sys_restart_syscall
+ 4062, // 220: sys_semtimedop
+ 761, // 221: sys_fadvise64
+ 5151, // 222: sys_timer_create
+ 5224, // 223: sys_timer_settime
+ 5206, // 224: sys_timer_gettime
+ 5185, // 225: sys_timer_getoverrun
+ 5168, // 226: sys_timer_delete
+ 415, // 227: sys_clock_settime
+ 377, // 228: sys_clock_gettime
+ 360, // 229: sys_clock_getres
+ 395, // 230: sys_clock_nanosleep
+ 732, // 231: sys_exit_group
+ 640, // 232: sys_epoll_wait
+ 592, // 233: sys_epoll_ctl
+ 5131, // 234: sys_tgkill
+ 5527, // 235: sys_utimes
+ 5594, // 236: sys_vserver
+ 2278, // 237: sys_mbind
+ 4150, // 238: sys_set_mempolicy
+ 1214, // 239: sys_get_mempolicy
+ 2540, // 240: sys_mq_open
+ 2589, // 241: sys_mq_unlink
+ 2572, // 242: sys_mq_timedsend
+ 2552, // 243: sys_mq_timedreceive
+ 2526, // 244: sys_mq_notify
+ 2508, // 245: sys_mq_getsetattr
+ 2042, // 246: sys_kexec_load
+ 5616, // 247: sys_waitid
+ 83, // 248: sys_add_key
+ 3528, // 249: sys_request_key
+ 2057, // 250: sys_keyctl
+ 1990, // 251: sys_ioprio_set
+ 1975, // 252: sys_ioprio_get
+ 1798, // 253: sys_inotify_init
+ 1776, // 254: sys_inotify_add_watch
+ 1833, // 255: sys_inotify_rm_watch
+ 2320, // 256: sys_migrate_pages
+ 2879, // 257: sys_openat
+ 2360, // 258: sys_mkdirat
+ 2382, // 259: sys_mknodat
+ 901, // 260: sys_fchownat
+ 1180, // 261: sys_futimesat
+ 2742, // 262: sys_newfstatat
+ 5441, // 263: sys_unlinkat
+ 3501, // 264: sys_renameat
+ 2124, // 265: sys_linkat
+ 5003, // 266: sys_symlinkat
+ 3370, // 267: sys_readlinkat
+ 864, // 268: sys_fchmodat
+ 747, // 269: sys_faccessat
+ 3218, // 270: sys_pselect6
+ 3086, // 271: sys_ppoll
+ 5454, // 272: sys_unshare
+ 4168, // 273: sys_set_robust_list
+ 1232, // 274: sys_get_robust_list
+ 4871, // 275: sys_splice
+ 5123, // 276: sys_tee
+ 5026, // 277: sys_sync_file_range
+ 5581, // 278: sys_vmsplice
+ 2472, // 279: sys_move_pages
+ 5513, // 280: sys_utimensat
+ 624, // 281: sys_epoll_pwait
+ 4743, // 282: sys_signalfd
+ 5242, // 283: sys_timerfd_create
+ 674, // 284: sys_eventfd
+ 792, // 285: sys_fallocate
+ 5281, // 286: sys_timerfd_settime
+ 5261, // 287: sys_timerfd_gettime
+ 51, // 288: sys_accept4
+ 4756, // 289: sys_signalfd4
+ 686, // 290: sys_eventfd2
+ 574, // 291: sys_epoll_create1
+ 548, // 292: sys_dup3
+ 3005, // 293: sys_pipe2
+ 1815, // 294: sys_inotify_init1
+ 3118, // 295: sys_preadv
+ 3267, // 296: sys_pwritev
+ 3712, // 297: sys_rt_tgsigqueueinfo
+ 2960, // 298: sys_perf_event_open
+ 3428, // 299: sys_recvmmsg
+ 806, // 300: sys_fanotify_init
+ 824, // 301: sys_fanotify_mark
+ 3141, // 302: sys_prlimit64
+ 2706, // 303: sys_name_to_handle_at
+ 2857, // 304: sys_open_by_handle_at
+ 342, // 305: sys_clock_adjtime
+ 5067, // 306: sys_syncfs
+ 4114, // 307: sys_sendmmsg
+ 4386, // 308: sys_setns
+ 1272, // 309: sys_getcpu
+ 3155, // 310: sys_process_vm_readv
+ 3176, // 311: sys_process_vm_writev
+ 2013, // 312: sys_kcmp
+ 964, // 313: sys_finit_module
+ 3918, // 314: sys_sched_setattr
+ 3810, // 315: sys_sched_getattr
+ 3514, // 316: sys_renameat2
+ 3994, // 317: sys_seccomp
+ 1533, // 318: sys_getrandom
+ 2303, // 319: sys_memfd_create
+ 2022, // 320: sys_kexec_file_load
+ 241, // 321: sys_bpf
+ 710, // 322: sys_execveat
+ 5477, // 323: sys_userfaultfd
+ 2288, // 324: sys_membarrier
+ 2404, // 325: sys_mlock2
+ 465, // 326: sys_copy_file_range
+ 3129, // 327: sys_preadv2
+ 3279, // 328: sys_pwritev2
+ 3059, // 329: sys_pkey_mprotect
+ 3030, // 330: sys_pkey_alloc
+ 3045, // 331: sys_pkey_free
+ 4939, // 332: sys_statx
+ 1900, // 333: sys_io_pgetevents
+ 3574, // 334: sys_rseq
+ 0, // 335:
+ 0, // 336:
+ 0, // 337:
+ 0, // 338:
+ 0, // 339:
+ 0, // 340:
+ 0, // 341:
+ 0, // 342:
+ 0, // 343:
+ 0, // 344:
+ 0, // 345:
+ 0, // 346:
+ 0, // 347:
+ 0, // 348:
+ 0, // 349:
+ 0, // 350:
+ 0, // 351:
+ 0, // 352:
+ 0, // 353:
+ 0, // 354:
+ 0, // 355:
+ 0, // 356:
+ 0, // 357:
+ 0, // 358:
+ 0, // 359:
+ 0, // 360:
+ 0, // 361:
+ 0, // 362:
+ 0, // 363:
+ 0, // 364:
+ 0, // 365:
+ 0, // 366:
+ 0, // 367:
+ 0, // 368:
+ 0, // 369:
+ 0, // 370:
+ 0, // 371:
+ 0, // 372:
+ 0, // 373:
+ 0, // 374:
+ 0, // 375:
+ 0, // 376:
+ 0, // 377:
+ 0, // 378:
+ 0, // 379:
+ 0, // 380:
+ 0, // 381:
+ 0, // 382:
+ 0, // 383:
+ 0, // 384:
+ 0, // 385:
+ 0, // 386:
+ 0, // 387:
+ 0, // 388:
+ 0, // 389:
+ 0, // 390:
+ 0, // 391:
+ 0, // 392:
+ 0, // 393:
+ 0, // 394:
+ 0, // 395:
+ 0, // 396:
+ 0, // 397:
+ 0, // 398:
+ 0, // 399:
+ 0, // 400:
+ 0, // 401:
+ 0, // 402:
+ 0, // 403:
+ 0, // 404:
+ 0, // 405:
+ 0, // 406:
+ 0, // 407:
+ 0, // 408:
+ 0, // 409:
+ 0, // 410:
+ 0, // 411:
+ 0, // 412:
+ 0, // 413:
+ 0, // 414:
+ 0, // 415:
+ 0, // 416:
+ 0, // 417:
+ 0, // 418:
+ 0, // 419:
+ 0, // 420:
+ 0, // 421:
+ 0, // 422:
+ 0, // 423:
+ 0, // 424:
+ 0, // 425:
+ 0, // 426:
+ 0, // 427:
+ 0, // 428:
+ 0, // 429:
+ 0, // 430:
+ 0, // 431:
+ 0, // 432:
+ 0, // 433:
+ 0, // 434:
+ 0, // 435:
+ 0, // 436:
+ 0, // 437:
+ 0, // 438:
+ 0, // 439:
+ 0, // 440:
+ 0, // 441:
+ 0, // 442:
+ 0, // 443:
+ 0, // 444:
+ 0, // 445:
+ 0, // 446:
+ 0, // 447:
+ 0, // 448:
+ 0, // 449:
+ 0, // 450:
+ 0, // 451:
+ 0, // 452:
+ 0, // 453:
+ 0, // 454:
+ 0, // 455:
+ 0, // 456:
+ 0, // 457:
+ 0, // 458:
+ 0, // 459:
+ 0, // 460:
+ 0, // 461:
+ 0, // 462:
+ 0, // 463:
+ 0, // 464:
+ 0, // 465:
+ 0, // 466:
+ 0, // 467:
+ 0, // 468:
+ 0, // 469:
+ 0, // 470:
+ 0, // 471:
+ 0, // 472:
+ 0, // 473:
+ 0, // 474:
+ 0, // 475:
+ 0, // 476:
+ 0, // 477:
+ 0, // 478:
+ 0, // 479:
+ 0, // 480:
+ 0, // 481:
+ 0, // 482:
+ 0, // 483:
+ 0, // 484:
+ 0, // 485:
+ 0, // 486:
+ 0, // 487:
+ 0, // 488:
+ 0, // 489:
+ 0, // 490:
+ 0, // 491:
+ 0, // 492:
+ 0, // 493:
+ 0, // 494:
+ 0, // 495:
+ 0, // 496:
+ 0, // 497:
+ 0, // 498:
+ 0, // 499:
+ 0, // 500:
+ 0, // 501:
+ 0, // 502:
+ 0, // 503:
+ 0, // 504:
+ 0, // 505:
+ 0, // 506:
+ 0, // 507:
+ 0, // 508:
+ 0, // 509:
+ 0, // 510:
+ 0, // 511:
+ 3583, // 512: sys_rt_sigaction
+ 3657, // 513: sys_rt_sigreturn
+ 1945, // 514: sys_ioctl
+ 3385, // 515: sys_readv
+ 5649, // 516: sys_writev
+ 3415, // 517: sys_recvfrom
+ 4127, // 518: sys_sendmsg
+ 3441, // 519: sys_recvmsg
+ 699, // 520: sys_execve
+ 3231, // 521: sys_ptrace
+ 3600, // 522: sys_rt_sigpending
+ 3692, // 523: sys_rt_sigtimedwait
+ 3637, // 524: sys_rt_sigqueueinfo
+ 4716, // 525: sys_sigaltstack
+ 5151, // 526: sys_timer_create
+ 2526, // 527: sys_mq_notify
+ 2042, // 528: sys_kexec_load
+ 5616, // 529: sys_waitid
+ 4168, // 530: sys_set_robust_list
+ 1232, // 531: sys_get_robust_list
+ 5581, // 532: sys_vmsplice
+ 2472, // 533: sys_move_pages
+ 3118, // 534: sys_preadv
+ 3267, // 535: sys_pwritev
+ 3712, // 536: sys_rt_tgsigqueueinfo
+ 3428, // 537: sys_recvmmsg
+ 4114, // 538: sys_sendmmsg
+ 3155, // 539: sys_process_vm_readv
+ 3176, // 540: sys_process_vm_writev
+ 4565, // 541: sys_setsockopt
+ 1662, // 542: sys_getsockopt
+ 1918, // 543: sys_io_setup
+ 1931, // 544: sys_io_submit
+ 710, // 545: sys_execveat
+ 3129, // 546: sys_preadv2
+ 3279, // 547: sys_pwritev2
+ };
+};
+
+} // namespace perfetto
+#endif // SRC_KERNEL_UTILS_SYSCALL_TABLE_GENERATED_H_
diff --git a/src/kernel_utils/syscall_table_unittest.cc b/src/kernel_utils/syscall_table_unittest.cc
new file mode 100644
index 0000000..30390f3
--- /dev/null
+++ b/src/kernel_utils/syscall_table_unittest.cc
@@ -0,0 +1,109 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "src/kernel_utils/syscall_table.h"
+
+#include "test/gtest_and_gmock.h"
+
+namespace perfetto {
+namespace {
+
+TEST(SyscallTableTest, Aarch64) {
+ SyscallTable t(Architecture::kAarch64);
+ EXPECT_STREQ(t.GetById(0), "sys_io_setup");
+ EXPECT_EQ(t.GetByName("sys_io_setup"), 0u);
+
+ EXPECT_STREQ(t.GetById(1), "sys_io_destroy");
+ EXPECT_EQ(t.GetByName("sys_io_destroy"), 1u);
+
+ EXPECT_STREQ(t.GetById(220), "sys_clone");
+ EXPECT_EQ(t.GetByName("sys_clone"), 220u);
+
+ EXPECT_STREQ(t.GetById(293), "sys_rseq");
+ EXPECT_EQ(t.GetByName("sys_rseq"), 293u);
+
+ EXPECT_STREQ(t.GetById(294), nullptr);
+ EXPECT_STREQ(t.GetById(kMaxSyscalls), nullptr);
+
+ EXPECT_EQ(t.GetByName("sys_non_existent"), std::nullopt);
+}
+
+TEST(SyscallTableTest, ArmEabi) {
+ SyscallTable t(Architecture::kArmEabi);
+ EXPECT_STREQ(t.GetById(0), "sys_restart_syscall");
+ EXPECT_EQ(t.GetByName("sys_restart_syscall"), 0u);
+
+ EXPECT_STREQ(t.GetById(1), "sys_exit");
+ EXPECT_EQ(t.GetByName("sys_exit"), 1u);
+
+ EXPECT_STREQ(t.GetById(190), "sys_vfork");
+ EXPECT_EQ(t.GetByName("sys_vfork"), 190u);
+
+ EXPECT_STREQ(t.GetById(399), "sys_io_pgetevents");
+ EXPECT_EQ(t.GetByName("sys_io_pgetevents"), 399u);
+
+ EXPECT_STREQ(t.GetById(400), nullptr);
+ EXPECT_STREQ(t.GetById(kMaxSyscalls), nullptr);
+
+ EXPECT_EQ(t.GetByName("sys_non_existent"), std::nullopt);
+}
+
+TEST(SyscallTableTest, X86_64) {
+ SyscallTable t(Architecture::kX86_64);
+ EXPECT_STREQ(t.GetById(0), "sys_read");
+ EXPECT_EQ(t.GetByName("sys_read"), 0u);
+
+ EXPECT_STREQ(t.GetById(1), "sys_write");
+ EXPECT_EQ(t.GetByName("sys_write"), 1u);
+
+ EXPECT_STREQ(t.GetById(58), "sys_vfork");
+ EXPECT_EQ(t.GetByName("sys_vfork"), 58u);
+
+ // sys_pwritev2 shows up in two slots, 328 and 547 (which is really
+ // compat_sys_pwritev64v2). Ensure we can lookup both.
+ EXPECT_STREQ(t.GetById(547), "sys_pwritev2");
+ EXPECT_STREQ(t.GetById(328), "sys_pwritev2");
+ EXPECT_EQ(t.GetByName("sys_pwritev2"), 328u);
+
+ EXPECT_STREQ(t.GetById(335), "");
+ EXPECT_STREQ(t.GetById(511), "");
+
+ EXPECT_STREQ(t.GetById(548), nullptr);
+ EXPECT_STREQ(t.GetById(kMaxSyscalls), nullptr);
+ EXPECT_EQ(t.GetByName("sys_non_existent"), std::nullopt);
+}
+
+TEST(SyscallTableTest, X86) {
+ SyscallTable t(Architecture::kX86);
+ EXPECT_STREQ(t.GetById(0), "sys_restart_syscall");
+ EXPECT_EQ(t.GetByName("sys_restart_syscall"), 0u);
+
+ EXPECT_STREQ(t.GetById(1), "sys_exit");
+ EXPECT_EQ(t.GetByName("sys_exit"), 1u);
+
+ EXPECT_STREQ(t.GetById(190), "sys_vfork");
+ EXPECT_EQ(t.GetByName("sys_vfork"), 190u);
+
+ EXPECT_STREQ(t.GetById(386), "sys_rseq");
+ EXPECT_EQ(t.GetByName("sys_rseq"), 386);
+
+ EXPECT_STREQ(t.GetById(387), nullptr);
+ EXPECT_STREQ(t.GetById(kMaxSyscalls), nullptr);
+ EXPECT_EQ(t.GetByName("sys_non_existent"), std::nullopt);
+}
+
+} // namespace
+} // namespace perfetto
diff --git a/src/kernel_utils/syscalls_aarch32.h b/src/kernel_utils/syscalls_aarch32.h
deleted file mode 100644
index e1bb6b3..0000000
--- a/src/kernel_utils/syscalls_aarch32.h
+++ /dev/null
@@ -1,427 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SRC_KERNEL_UTILS_SYSCALLS_AARCH32_H_
-#define SRC_KERNEL_UTILS_SYSCALLS_AARCH32_H_
-
-namespace perfetto {
-
-// See tools/extract_linux_syscall_tables .
-constexpr const char* kSyscalls_Aarch32[] = {
- "sys_restart_syscall", // 0
- "sys_exit", // 1
- "sys_fork", // 2
- "sys_read", // 3
- "sys_write", // 4
- "sys_open", // 5
- "sys_close", // 6
- "", // 7
- "sys_creat", // 8
- "sys_link", // 9
- "sys_unlink", // 10
- "sys_execve", // 11
- "sys_chdir", // 12
- "", // 13
- "sys_mknod", // 14
- "sys_chmod", // 15
- "sys_lchown", // 16
- "", // 17
- "", // 18
- "sys_lseek", // 19
- "sys_getpid", // 20
- "sys_mount", // 21
- "", // 22
- "sys_setuid", // 23
- "sys_getuid", // 24
- "", // 25
- "sys_ptrace", // 26
- "", // 27
- "", // 28
- "sys_pause", // 29
- "", // 30
- "", // 31
- "", // 32
- "sys_access", // 33
- "sys_nice", // 34
- "", // 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
- "", // 44
- "sys_brk", // 45
- "sys_setgid", // 46
- "sys_getgid", // 47
- "", // 48
- "sys_geteuid", // 49
- "sys_getegid", // 50
- "sys_acct", // 51
- "sys_umount2", // 52
- "", // 53
- "sys_ioctl", // 54
- "sys_fcntl", // 55
- "", // 56
- "sys_setpgid", // 57
- "", // 58
- "", // 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
- "", // 68
- "", // 69
- "sys_setreuid", // 70
- "sys_setregid", // 71
- "sys_sigsuspend", // 72
- "sys_sigpending", // 73
- "sys_sethostname", // 74
- "sys_setrlimit", // 75
- "", // 76
- "sys_getrusage", // 77
- "sys_gettimeofday", // 78
- "sys_settimeofday", // 79
- "sys_getgroups", // 80
- "sys_setgroups", // 81
- "", // 82
- "sys_symlink", // 83
- "", // 84
- "sys_readlink", // 85
- "sys_uselib", // 86
- "sys_swapon", // 87
- "sys_reboot", // 88
- "", // 89
- "", // 90
- "sys_munmap", // 91
- "sys_truncate", // 92
- "sys_ftruncate", // 93
- "sys_fchmod", // 94
- "sys_fchown", // 95
- "sys_getpriority", // 96
- "sys_setpriority", // 97
- "", // 98
- "sys_statfs", // 99
- "sys_fstatfs", // 100
- "", // 101
- "", // 102
- "sys_syslog", // 103
- "sys_setitimer", // 104
- "sys_getitimer", // 105
- "sys_stat", // 106
- "sys_lstat", // 107
- "sys_fstat", // 108
- "", // 109
- "", // 110
- "sys_vhangup", // 111
- "", // 112
- "", // 113
- "sys_wait4", // 114
- "sys_swapoff", // 115
- "sys_sysinfo", // 116
- "", // 117
- "sys_fsync", // 118
- "sys_sigreturn", // 119
- "sys_clone", // 120
- "sys_setdomainname", // 121
- "sys_uname", // 122
- "", // 123
- "sys_adjtimex", // 124
- "sys_mprotect", // 125
- "sys_sigprocmask", // 126
- "", // 127
- "sys_init_module", // 128
- "sys_delete_module", // 129
- "", // 130
- "sys_quotactl", // 131
- "sys_getpgid", // 132
- "sys_fchdir", // 133
- "sys_bdflush", // 134
- "sys_sysfs", // 135
- "sys_personality", // 136
- "", // 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
- "", // 166
- "", // 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
- "", // 188
- "", // 189
- "sys_vfork", // 190
- "", // 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_getdents64", // 217
- "sys_pivot_root", // 218
- "sys_mincore", // 219
- "sys_madvise", // 220
- "sys_fcntl64", // 221
- "", // 222
- "", // 223
- "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_io_setup", // 243
- "sys_io_destroy", // 244
- "sys_io_getevents", // 245
- "sys_io_submit", // 246
- "sys_io_cancel", // 247
- "sys_exit_group", // 248
- "sys_lookup_dcookie", // 249
- "sys_epoll_create", // 250
- "sys_epoll_ctl", // 251
- "sys_epoll_wait", // 252
- "sys_remap_file_pages", // 253
- "", // 254
- "", // 255
- "sys_set_tid_address", // 256
- "sys_timer_create", // 257
- "sys_timer_settime", // 258
- "sys_timer_gettime", // 259
- "sys_timer_getoverrun", // 260
- "sys_timer_delete", // 261
- "sys_clock_settime", // 262
- "sys_clock_gettime", // 263
- "sys_clock_getres", // 264
- "sys_clock_nanosleep", // 265
- "sys_statfs64", // 266
- "sys_fstatfs64", // 267
- "sys_tgkill", // 268
- "sys_utimes", // 269
- "sys_arm_fadvise64_64", // 270
- "sys_pciconfig_iobase", // 271
- "sys_pciconfig_read", // 272
- "sys_pciconfig_write", // 273
- "sys_mq_open", // 274
- "sys_mq_unlink", // 275
- "sys_mq_timedsend", // 276
- "sys_mq_timedreceive", // 277
- "sys_mq_notify", // 278
- "sys_mq_getsetattr", // 279
- "sys_waitid", // 280
- "sys_socket", // 281
- "sys_bind", // 282
- "sys_connect", // 283
- "sys_listen", // 284
- "sys_accept", // 285
- "sys_getsockname", // 286
- "sys_getpeername", // 287
- "sys_socketpair", // 288
- "sys_send", // 289
- "sys_sendto", // 290
- "sys_recv", // 291
- "sys_recvfrom", // 292
- "sys_shutdown", // 293
- "sys_setsockopt", // 294
- "sys_getsockopt", // 295
- "sys_sendmsg", // 296
- "sys_recvmsg", // 297
- "sys_semop", // 298
- "sys_semget", // 299
- "sys_semctl", // 300
- "sys_msgsnd", // 301
- "sys_msgrcv", // 302
- "sys_msgget", // 303
- "sys_msgctl", // 304
- "sys_shmat", // 305
- "sys_shmdt", // 306
- "sys_shmget", // 307
- "sys_shmctl", // 308
- "sys_add_key", // 309
- "sys_request_key", // 310
- "sys_keyctl", // 311
- "sys_semtimedop", // 312
- "sys_vserver", // 313
- "sys_ioprio_set", // 314
- "sys_ioprio_get", // 315
- "sys_inotify_init", // 316
- "sys_inotify_add_watch", // 317
- "sys_inotify_rm_watch", // 318
- "sys_mbind", // 319
- "sys_get_mempolicy", // 320
- "sys_set_mempolicy", // 321
- "sys_openat", // 322
- "sys_mkdirat", // 323
- "sys_mknodat", // 324
- "sys_fchownat", // 325
- "sys_futimesat", // 326
- "sys_fstatat64", // 327
- "sys_unlinkat", // 328
- "sys_renameat", // 329
- "sys_linkat", // 330
- "sys_symlinkat", // 331
- "sys_readlinkat", // 332
- "sys_fchmodat", // 333
- "sys_faccessat", // 334
- "sys_pselect6", // 335
- "sys_ppoll", // 336
- "sys_unshare", // 337
- "sys_set_robust_list", // 338
- "sys_get_robust_list", // 339
- "sys_splice", // 340
- "sys_sync_file_range2", // 341
- "sys_tee", // 342
- "sys_vmsplice", // 343
- "sys_move_pages", // 344
- "sys_getcpu", // 345
- "sys_epoll_pwait", // 346
- "sys_kexec_load", // 347
- "sys_utimensat", // 348
- "sys_signalfd", // 349
- "sys_timerfd_create", // 350
- "sys_eventfd", // 351
- "sys_fallocate", // 352
- "sys_timerfd_settime", // 353
- "sys_timerfd_gettime", // 354
- "sys_signalfd4", // 355
- "sys_eventfd2", // 356
- "sys_epoll_create1", // 357
- "sys_dup3", // 358
- "sys_pipe2", // 359
- "sys_inotify_init1", // 360
- "sys_preadv", // 361
- "sys_pwritev", // 362
- "sys_rt_tgsigqueueinfo", // 363
- "sys_perf_event_open", // 364
- "sys_recvmmsg", // 365
- "sys_accept4", // 366
- "sys_fanotify_init", // 367
- "sys_fanotify_mark", // 368
- "sys_prlimit64", // 369
- "sys_name_to_handle_at", // 370
- "sys_open_by_handle_at", // 371
- "sys_clock_adjtime", // 372
- "sys_syncfs", // 373
- "sys_sendmmsg", // 374
- "sys_setns", // 375
- "sys_process_vm_readv", // 376
- "sys_process_vm_writev", // 377
- "sys_kcmp", // 378
- "sys_finit_module", // 379
- "sys_sched_setattr", // 380
- "sys_sched_getattr", // 381
- "sys_renameat2", // 382
- "sys_seccomp", // 383
- "sys_getrandom", // 384
- "sys_memfd_create", // 385
- "sys_bpf", // 386
- "sys_execveat", // 387
- "sys_userfaultfd", // 388
- "sys_membarrier", // 389
- "sys_mlock2", // 390
- "sys_copy_file_range", // 391
- "sys_preadv2", // 392
- "sys_pwritev2", // 393
- "sys_pkey_mprotect", // 394
- "sys_pkey_alloc", // 395
- "sys_pkey_free", // 396
- "sys_statx", // 397
- "sys_rseq", // 398
-};
-
-} // namespace perfetto
-
-#endif // SRC_KERNEL_UTILS_SYSCALLS_AARCH32_H_
diff --git a/src/kernel_utils/syscalls_aarch64.h b/src/kernel_utils/syscalls_aarch64.h
deleted file mode 100644
index 8a95e89..0000000
--- a/src/kernel_utils/syscalls_aarch64.h
+++ /dev/null
@@ -1,322 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SRC_KERNEL_UTILS_SYSCALLS_AARCH64_H_
-#define SRC_KERNEL_UTILS_SYSCALLS_AARCH64_H_
-
-namespace perfetto {
-
-// See tools/extract_linux_syscall_tables .
-constexpr const char* kSyscalls_Aarch64[] = {
- "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_fcntl", // 25
- "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_statfs", // 43
- "sys_fstatfs", // 44
- "sys_truncate", // 45
- "sys_ftruncate", // 46
- "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_lseek", // 62
- "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_sendfile", // 71
- "sys_pselect6", // 72
- "sys_ppoll", // 73
- "sys_signalfd4", // 74
- "sys_vmsplice", // 75
- "sys_splice", // 76
- "sys_tee", // 77
- "sys_readlinkat", // 78
- "sys_fstatat", // 79
- "sys_fstat", // 80
- "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_mmap", // 222
- "sys_fadvise64", // 223
- "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
- "", // 245
- "", // 246
- "", // 247
- "", // 248
- "", // 249
- "", // 250
- "", // 251
- "", // 252
- "", // 253
- "", // 254
- "", // 255
- "", // 256
- "", // 257
- "", // 258
- "", // 259
- "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_statx", // 291
- "sys_io_pgetevents", // 292
- "sys_rseq", // 293
-};
-
-} // namespace perfetto
-
-#endif // SRC_KERNEL_UTILS_SYSCALLS_AARCH64_H_
diff --git a/src/kernel_utils/syscalls_armeabi.h b/src/kernel_utils/syscalls_armeabi.h
deleted file mode 100644
index 22b3e8c..0000000
--- a/src/kernel_utils/syscalls_armeabi.h
+++ /dev/null
@@ -1,428 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SRC_KERNEL_UTILS_SYSCALLS_ARMEABI_H_
-#define SRC_KERNEL_UTILS_SYSCALLS_ARMEABI_H_
-
-namespace perfetto {
-
-// See tools/extract_linux_syscall_tables .
-constexpr const char* kSyscalls_ArmEabi[] = {
- "sys_restart_syscall", // 0
- "sys_exit", // 1
- "sys_fork", // 2
- "sys_read", // 3
- "sys_write", // 4
- "sys_open", // 5
- "sys_close", // 6
- "", // 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
- "", // 17
- "", // 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
- "", // 28
- "sys_pause", // 29
- "sys_utime", // 30
- "", // 31
- "", // 32
- "sys_access", // 33
- "sys_nice", // 34
- "", // 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
- "", // 44
- "sys_brk", // 45
- "sys_setgid", // 46
- "sys_getgid", // 47
- "", // 48
- "sys_geteuid", // 49
- "sys_getegid", // 50
- "sys_acct", // 51
- "sys_umount2", // 52
- "", // 53
- "sys_ioctl", // 54
- "sys_fcntl", // 55
- "", // 56
- "sys_setpgid", // 57
- "", // 58
- "", // 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
- "", // 68
- "", // 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
- "", // 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
- "", // 98
- "sys_statfs", // 99
- "sys_fstatfs", // 100
- "", // 101
- "sys_socketcall", // 102
- "sys_syslog", // 103
- "sys_setitimer", // 104
- "sys_getitimer", // 105
- "sys_stat", // 106
- "sys_lstat", // 107
- "sys_fstat", // 108
- "", // 109
- "", // 110
- "sys_vhangup", // 111
- "", // 112
- "sys_syscall", // 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
- "", // 123
- "sys_adjtimex", // 124
- "sys_mprotect", // 125
- "sys_sigprocmask", // 126
- "", // 127
- "sys_init_module", // 128
- "sys_delete_module", // 129
- "", // 130
- "sys_quotactl", // 131
- "sys_getpgid", // 132
- "sys_fchdir", // 133
- "sys_bdflush", // 134
- "sys_sysfs", // 135
- "sys_personality", // 136
- "", // 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
- "", // 166
- "", // 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
- "", // 188
- "", // 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_getdents64", // 217
- "sys_pivot_root", // 218
- "sys_mincore", // 219
- "sys_madvise", // 220
- "sys_fcntl64", // 221
- "", // 222
- "", // 223
- "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_io_setup", // 243
- "sys_io_destroy", // 244
- "sys_io_getevents", // 245
- "sys_io_submit", // 246
- "sys_io_cancel", // 247
- "sys_exit_group", // 248
- "sys_lookup_dcookie", // 249
- "sys_epoll_create", // 250
- "sys_epoll_ctl", // 251
- "sys_epoll_wait", // 252
- "sys_remap_file_pages", // 253
- "", // 254
- "", // 255
- "sys_set_tid_address", // 256
- "sys_timer_create", // 257
- "sys_timer_settime", // 258
- "sys_timer_gettime", // 259
- "sys_timer_getoverrun", // 260
- "sys_timer_delete", // 261
- "sys_clock_settime", // 262
- "sys_clock_gettime", // 263
- "sys_clock_getres", // 264
- "sys_clock_nanosleep", // 265
- "sys_statfs64", // 266
- "sys_fstatfs64", // 267
- "sys_tgkill", // 268
- "sys_utimes", // 269
- "sys_arm_fadvise64_64", // 270
- "sys_pciconfig_iobase", // 271
- "sys_pciconfig_read", // 272
- "sys_pciconfig_write", // 273
- "sys_mq_open", // 274
- "sys_mq_unlink", // 275
- "sys_mq_timedsend", // 276
- "sys_mq_timedreceive", // 277
- "sys_mq_notify", // 278
- "sys_mq_getsetattr", // 279
- "sys_waitid", // 280
- "sys_socket", // 281
- "sys_bind", // 282
- "sys_connect", // 283
- "sys_listen", // 284
- "sys_accept", // 285
- "sys_getsockname", // 286
- "sys_getpeername", // 287
- "sys_socketpair", // 288
- "sys_send", // 289
- "sys_sendto", // 290
- "sys_recv", // 291
- "sys_recvfrom", // 292
- "sys_shutdown", // 293
- "sys_setsockopt", // 294
- "sys_getsockopt", // 295
- "sys_sendmsg", // 296
- "sys_recvmsg", // 297
- "sys_semop", // 298
- "sys_semget", // 299
- "sys_semctl", // 300
- "sys_msgsnd", // 301
- "sys_msgrcv", // 302
- "sys_msgget", // 303
- "sys_msgctl", // 304
- "sys_shmat", // 305
- "sys_shmdt", // 306
- "sys_shmget", // 307
- "sys_shmctl", // 308
- "sys_add_key", // 309
- "sys_request_key", // 310
- "sys_keyctl", // 311
- "sys_semtimedop", // 312
- "sys_vserver", // 313
- "sys_ioprio_set", // 314
- "sys_ioprio_get", // 315
- "sys_inotify_init", // 316
- "sys_inotify_add_watch", // 317
- "sys_inotify_rm_watch", // 318
- "sys_mbind", // 319
- "sys_get_mempolicy", // 320
- "sys_set_mempolicy", // 321
- "sys_openat", // 322
- "sys_mkdirat", // 323
- "sys_mknodat", // 324
- "sys_fchownat", // 325
- "sys_futimesat", // 326
- "sys_fstatat64", // 327
- "sys_unlinkat", // 328
- "sys_renameat", // 329
- "sys_linkat", // 330
- "sys_symlinkat", // 331
- "sys_readlinkat", // 332
- "sys_fchmodat", // 333
- "sys_faccessat", // 334
- "sys_pselect6", // 335
- "sys_ppoll", // 336
- "sys_unshare", // 337
- "sys_set_robust_list", // 338
- "sys_get_robust_list", // 339
- "sys_splice", // 340
- "sys_arm_sync_file_range", // 341
- "sys_tee", // 342
- "sys_vmsplice", // 343
- "sys_move_pages", // 344
- "sys_getcpu", // 345
- "sys_epoll_pwait", // 346
- "sys_kexec_load", // 347
- "sys_utimensat", // 348
- "sys_signalfd", // 349
- "sys_timerfd_create", // 350
- "sys_eventfd", // 351
- "sys_fallocate", // 352
- "sys_timerfd_settime", // 353
- "sys_timerfd_gettime", // 354
- "sys_signalfd4", // 355
- "sys_eventfd2", // 356
- "sys_epoll_create1", // 357
- "sys_dup3", // 358
- "sys_pipe2", // 359
- "sys_inotify_init1", // 360
- "sys_preadv", // 361
- "sys_pwritev", // 362
- "sys_rt_tgsigqueueinfo", // 363
- "sys_perf_event_open", // 364
- "sys_recvmmsg", // 365
- "sys_accept4", // 366
- "sys_fanotify_init", // 367
- "sys_fanotify_mark", // 368
- "sys_prlimit64", // 369
- "sys_name_to_handle_at", // 370
- "sys_open_by_handle_at", // 371
- "sys_clock_adjtime", // 372
- "sys_syncfs", // 373
- "sys_sendmmsg", // 374
- "sys_setns", // 375
- "sys_process_vm_readv", // 376
- "sys_process_vm_writev", // 377
- "sys_kcmp", // 378
- "sys_finit_module", // 379
- "sys_sched_setattr", // 380
- "sys_sched_getattr", // 381
- "sys_renameat2", // 382
- "sys_seccomp", // 383
- "sys_getrandom", // 384
- "sys_memfd_create", // 385
- "sys_bpf", // 386
- "sys_execveat", // 387
- "sys_userfaultfd", // 388
- "sys_membarrier", // 389
- "sys_mlock2", // 390
- "sys_copy_file_range", // 391
- "sys_preadv2", // 392
- "sys_pwritev2", // 393
- "sys_pkey_mprotect", // 394
- "sys_pkey_alloc", // 395
- "sys_pkey_free", // 396
- "sys_statx", // 397
- "sys_rseq", // 398
- "sys_io_pgetevents", // 399
-};
-
-} // namespace perfetto
-
-#endif // SRC_KERNEL_UTILS_SYSCALLS_ARMEABI_H_
diff --git a/src/kernel_utils/syscalls_x86.h b/src/kernel_utils/syscalls_x86.h
deleted file mode 100644
index b89a5da..0000000
--- a/src/kernel_utils/syscalls_x86.h
+++ /dev/null
@@ -1,415 +0,0 @@
-/*
- * Copyright (C) 2020 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SRC_KERNEL_UTILS_SYSCALLS_X86_H_
-#define SRC_KERNEL_UTILS_SYSCALLS_X86_H_
-
-namespace perfetto {
-
-// See tools/extract_linux_syscall_tables .
-constexpr const char* kSyscalls_x86[] = {
- "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
- "", // 222
- "", // 223
- "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
- "", // 251
- "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
- "", // 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
- "sys_copy_file_range", // 377
- "sys_preadv2", // 378
- "sys_pwritev2", // 379
- "sys_pkey_mprotect", // 380
- "sys_pkey_alloc", // 381
- "sys_pkey_free", // 382
- "sys_statx", // 383
- "sys_arch_prctl", // 384
- "sys_io_pgetevents", // 385
- "sys_rseq", // 386
-};
-
-} // namespace perfetto
-
-#endif // SRC_KERNEL_UTILS_SYSCALLS_X86_H_
diff --git a/src/kernel_utils/syscalls_x86_64.h b/src/kernel_utils/syscalls_x86_64.h
deleted file mode 100644
index 19fd5dc..0000000
--- a/src/kernel_utils/syscalls_x86_64.h
+++ /dev/null
@@ -1,576 +0,0 @@
-/*
- * Copyright (C) 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SRC_KERNEL_UTILS_SYSCALLS_X86_64_H_
-#define SRC_KERNEL_UTILS_SYSCALLS_X86_64_H_
-
-namespace perfetto {
-
-// See tools/extract_linux_syscall_tables .
-constexpr const char* kSyscalls_x86_64[] = {
- "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
- "sys_copy_file_range", // 326
- "sys_preadv2", // 327
- "sys_pwritev2", // 328
- "sys_pkey_mprotect", // 329
- "sys_pkey_alloc", // 330
- "sys_pkey_free", // 331
- "sys_statx", // 332
- "sys_io_pgetevents", // 333
- "sys_rseq", // 334
- "", // 335
- "", // 336
- "", // 337
- "", // 338
- "", // 339
- "", // 340
- "", // 341
- "", // 342
- "", // 343
- "", // 344
- "", // 345
- "", // 346
- "", // 347
- "", // 348
- "", // 349
- "", // 350
- "", // 351
- "", // 352
- "", // 353
- "", // 354
- "", // 355
- "", // 356
- "", // 357
- "", // 358
- "", // 359
- "", // 360
- "", // 361
- "", // 362
- "", // 363
- "", // 364
- "", // 365
- "", // 366
- "", // 367
- "", // 368
- "", // 369
- "", // 370
- "", // 371
- "", // 372
- "", // 373
- "", // 374
- "", // 375
- "", // 376
- "", // 377
- "", // 378
- "", // 379
- "", // 380
- "", // 381
- "", // 382
- "", // 383
- "", // 384
- "", // 385
- "", // 386
- "", // 387
- "", // 388
- "", // 389
- "", // 390
- "", // 391
- "", // 392
- "", // 393
- "", // 394
- "", // 395
- "", // 396
- "", // 397
- "", // 398
- "", // 399
- "", // 400
- "", // 401
- "", // 402
- "", // 403
- "", // 404
- "", // 405
- "", // 406
- "", // 407
- "", // 408
- "", // 409
- "", // 410
- "", // 411
- "", // 412
- "", // 413
- "", // 414
- "", // 415
- "", // 416
- "", // 417
- "", // 418
- "", // 419
- "", // 420
- "", // 421
- "", // 422
- "", // 423
- "", // 424
- "", // 425
- "", // 426
- "", // 427
- "", // 428
- "", // 429
- "", // 430
- "", // 431
- "", // 432
- "", // 433
- "", // 434
- "", // 435
- "", // 436
- "", // 437
- "", // 438
- "", // 439
- "", // 440
- "", // 441
- "", // 442
- "", // 443
- "", // 444
- "", // 445
- "", // 446
- "", // 447
- "", // 448
- "", // 449
- "", // 450
- "", // 451
- "", // 452
- "", // 453
- "", // 454
- "", // 455
- "", // 456
- "", // 457
- "", // 458
- "", // 459
- "", // 460
- "", // 461
- "", // 462
- "", // 463
- "", // 464
- "", // 465
- "", // 466
- "", // 467
- "", // 468
- "", // 469
- "", // 470
- "", // 471
- "", // 472
- "", // 473
- "", // 474
- "", // 475
- "", // 476
- "", // 477
- "", // 478
- "", // 479
- "", // 480
- "", // 481
- "", // 482
- "", // 483
- "", // 484
- "", // 485
- "", // 486
- "", // 487
- "", // 488
- "", // 489
- "", // 490
- "", // 491
- "", // 492
- "", // 493
- "", // 494
- "", // 495
- "", // 496
- "", // 497
- "", // 498
- "", // 499
- "", // 500
- "", // 501
- "", // 502
- "", // 503
- "", // 504
- "", // 505
- "", // 506
- "", // 507
- "", // 508
- "", // 509
- "", // 510
- "", // 511
- "sys_rt_sigaction", // 512
- "sys_rt_sigreturn", // 513
- "sys_ioctl", // 514
- "sys_readv", // 515
- "sys_writev", // 516
- "sys_recvfrom", // 517
- "sys_sendmsg", // 518
- "sys_recvmsg", // 519
- "sys_execve", // 520
- "sys_ptrace", // 521
- "sys_rt_sigpending", // 522
- "sys_rt_sigtimedwait", // 523
- "sys_rt_sigqueueinfo", // 524
- "sys_sigaltstack", // 525
- "sys_timer_create", // 526
- "sys_mq_notify", // 527
- "sys_kexec_load", // 528
- "sys_waitid", // 529
- "sys_set_robust_list", // 530
- "sys_get_robust_list", // 531
- "sys_vmsplice", // 532
- "sys_move_pages", // 533
- "sys_preadv", // 534
- "sys_pwritev", // 535
- "sys_rt_tgsigqueueinfo", // 536
- "sys_recvmmsg", // 537
- "sys_sendmmsg", // 538
- "sys_process_vm_readv", // 539
- "sys_process_vm_writev", // 540
- "sys_setsockopt", // 541
- "sys_getsockopt", // 542
- "sys_io_setup", // 543
- "sys_io_submit", // 544
- "sys_execveat", // 545
- "sys_preadv2", // 546
- "sys_pwritev2", // 547
-};
-
-} // namespace perfetto
-
-#endif // SRC_KERNEL_UTILS_SYSCALLS_X86_64_H_
diff --git a/src/trace_processor/importers/proto/system_probes_parser.cc b/src/trace_processor/importers/proto/system_probes_parser.cc
index 97fecb8..bd1f8c4 100644
--- a/src/trace_processor/importers/proto/system_probes_parser.cc
+++ b/src/trace_processor/importers/proto/system_probes_parser.cc
@@ -608,7 +608,7 @@
base::StringView machine = utsname.machine();
SyscallTracker* syscall_tracker = SyscallTracker::GetOrCreate(context_);
Architecture arch = SyscallTable::ArchFromString(machine);
- if (arch != kUnknown) {
+ if (arch != Architecture::kUnknown) {
syscall_tracker->SetArchitecture(arch);
} else {
PERFETTO_ELOG("Unknown architecture %s. Syscall traces will not work.",
diff --git a/src/trace_processor/importers/syscalls/syscall_tracker.cc b/src/trace_processor/importers/syscalls/syscall_tracker.cc
index 37be70e..ed71317 100644
--- a/src/trace_processor/importers/syscalls/syscall_tracker.cc
+++ b/src/trace_processor/importers/syscalls/syscall_tracker.cc
@@ -35,7 +35,7 @@
// of each process from the trace.
SyscallTracker::SyscallTracker(TraceProcessorContext* context)
: context_(context) {
- SetArchitecture(kUnknown);
+ SetArchitecture(Architecture::kUnknown);
}
SyscallTracker::~SyscallTracker() = default;
diff --git a/src/trace_processor/importers/syscalls/syscall_tracker_unittest.cc b/src/trace_processor/importers/syscalls/syscall_tracker_unittest.cc
index ceafd2f..d57d6de 100644
--- a/src/trace_processor/importers/syscalls/syscall_tracker_unittest.cc
+++ b/src/trace_processor/importers/syscalls/syscall_tracker_unittest.cc
@@ -93,7 +93,7 @@
.WillOnce(DoAll(SaveArg<3>(&end_name), Return(std::nullopt)));
SyscallTracker* syscall_tracker = SyscallTracker::GetOrCreate(&context);
- syscall_tracker->SetArchitecture(kAarch64);
+ syscall_tracker->SetArchitecture(Architecture::kAarch64);
syscall_tracker->Enter(100 /*ts*/, 42 /*utid*/, 63 /*sys_read*/);
syscall_tracker->Exit(110 /*ts*/, 42 /*utid*/, 63 /*sys_read*/);
EXPECT_EQ(context.storage->GetString(begin_name), "sys_read");
@@ -110,7 +110,7 @@
.WillOnce(DoAll(SaveArg<3>(&end_name), Return(std::nullopt)));
SyscallTracker* syscall_tracker = SyscallTracker::GetOrCreate(&context);
- syscall_tracker->SetArchitecture(kX86_64);
+ syscall_tracker->SetArchitecture(Architecture::kX86_64);
syscall_tracker->Enter(100 /*ts*/, 42 /*utid*/, 0 /*sys_read*/);
syscall_tracker->Exit(110 /*ts*/, 42 /*utid*/, 0 /*sys_read*/);
EXPECT_EQ(context.storage->GetString(begin_name), "sys_read");
@@ -122,7 +122,7 @@
EXPECT_CALL(*slice_tracker, End(_, _, _, _, _)).Times(0);
SyscallTracker* syscall_tracker = SyscallTracker::GetOrCreate(&context);
- syscall_tracker->SetArchitecture(kAarch64);
+ syscall_tracker->SetArchitecture(Architecture::kAarch64);
syscall_tracker->Enter(100 /*ts*/, 42 /*utid*/, 9999);
syscall_tracker->Exit(110 /*ts*/, 42 /*utid*/, 9999);
}
diff --git a/src/traced/probes/ftrace/ftrace_config_muxer_unittest.cc b/src/traced/probes/ftrace/ftrace_config_muxer_unittest.cc
index a231932..92acbf3 100644
--- a/src/traced/probes/ftrace/ftrace_config_muxer_unittest.cc
+++ b/src/traced/probes/ftrace/ftrace_config_muxer_unittest.cc
@@ -48,10 +48,11 @@
constexpr int kFakePrintEventId = 20;
constexpr int kSysEnterId = 329;
-constexpr size_t kFakeSyscallCount = 2;
-constexpr const char* kFakeSyscalls[] = {
- "sys_open",
- "sys_read",
+struct FakeSyscallTable {
+ static constexpr char names[] =
+ "sys_open\0"
+ "sys_read\0";
+ static constexpr SyscallTable::OffT offsets[]{0, 9};
};
std::string PageSizeKb() {
@@ -151,7 +152,7 @@
}
SyscallTable GetSyscallTable() {
- return SyscallTable(kFakeSyscalls, kFakeSyscallCount);
+ return SyscallTable::Load<FakeSyscallTable>();
}
std::unique_ptr<ProtoTranslationTable> CreateFakeTable(
diff --git a/src/traced/probes/ftrace/ftrace_controller_unittest.cc b/src/traced/probes/ftrace/ftrace_controller_unittest.cc
index c9a5ca1..debdbfa 100644
--- a/src/traced/probes/ftrace/ftrace_controller_unittest.cc
+++ b/src/traced/probes/ftrace/ftrace_controller_unittest.cc
@@ -103,8 +103,8 @@
std::unique_ptr<FtraceConfigMuxer> FakeMuxer(FtraceProcfs* ftrace,
ProtoTranslationTable* table) {
- return std::unique_ptr<FtraceConfigMuxer>(
- new FtraceConfigMuxer(ftrace, table, SyscallTable(kUnknown), {}));
+ return std::unique_ptr<FtraceConfigMuxer>(new FtraceConfigMuxer(
+ ftrace, table, SyscallTable(Architecture::kUnknown), {}));
}
class MockFtraceProcfs : public FtraceProcfs {
diff --git a/tools/extract_linux_syscall_tables b/tools/extract_linux_syscall_tables
index e7c5b2d..05f676f 100755
--- a/tools/extract_linux_syscall_tables
+++ b/tools/extract_linux_syscall_tables
@@ -1,19 +1,58 @@
#!/usr/bin/env python3
+import os
import re
import sys
from urllib.request import urlopen
+PROJECT_ROOT = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
+SELF_PATH = os.path.relpath(__file__, PROJECT_ROOT).replace('\\', '/')
+
syscalls = {}
+archs = ['aarch32', 'aarch64', 'armeabi', 'x86', 'x86_64']
-
-def print_table(name):
- tab = syscalls[name]
- print('\n\n----------------- BEGIN OF %s -----------------' % name)
- for i in range(max(tab.keys()) + 1):
- print('"%s", // %d' % (tab.get(i, ''), i))
- print('----------------- END OF %s -----------------' % name)
+def print_tables():
+ print('// DO NOT EDIT. Auto-generated by %s' % SELF_PATH)
+ print('#ifndef SRC_KERNEL_UTILS_SYSCALL_TABLE_GENERATED_H_')
+ print('#define SRC_KERNEL_UTILS_SYSCALL_TABLE_GENERATED_H_')
+ print('')
+ print('#include <stdint.h>')
+ print('')
+ print('namespace perfetto {')
+ print('')
+ # First of all merge all the syscall names from all tables and emit one big
+ # string with unique names.
+ syscall_names = set()
+ for arch in archs:
+ tab = syscalls[arch]
+ for i in range(max(tab.keys()) + 1):
+ syscall_names.add(tab.get(i, ''))
+ print('constexpr char kAllSyscalllNames[] =')
+ offset_by_name = {}
+ last_off = 0
+ for syscall_name in sorted(syscall_names):
+ if syscall_name in offset_by_name:
+ continue
+ print(' "%s\\0"' % syscall_name)
+ offset_by_name[syscall_name] = last_off
+ last_off += len(syscall_name) + 1
+ if last_off >= 0xffff:
+ raise Exception('SyscallTable::OffT must be increased to uint32_t')
+ print(';\n')
+ # Then print the individual tables.
+ for arch in archs:
+ tab = syscalls[arch]
+ print('struct SyscallTable_%s {' % arch)
+ print(' static constexpr const char* names = kAllSyscalllNames;')
+ print(' static constexpr SyscallTable::OffT offsets[] {')
+ for i in range(max(tab.keys()) + 1):
+ syscall_name = tab.get(i, '')
+ print('%d, // %d: %s' % (offset_by_name[syscall_name], i, syscall_name))
+ print(' };')
+ print('};\n')
+ print('} // namespace perfetto')
+ print('#endif // SRC_KERNEL_UTILS_SYSCALL_TABLE_GENERATED_H_')
# Parses a .tbl file (new format).
@@ -61,11 +100,7 @@
response = urlopen(KSRC + 'include/uapi/asm-generic/unistd.h')
syscalls['aarch64'] = parse_def(response.read().decode())
- print_table('x86_64')
- print_table('x86')
- print_table('aarch64')
- print_table('armeabi')
- print_table('aarch32')
+ print_tables()
if __name__ == '__main__':