From 2276b109e0d920617e3922aeb2d1ca3bc3b73cb7 Mon Sep 17 00:00:00 2001 From: William Cohen Date: Thu, 21 Feb 2019 12:21:13 -0500 Subject: [PATCH] Add more __NR_* for missing defines on aarch64 (and ppc64) There are a number of syscall defines (__NR_*) on the x86_64 that are not on aarch64 (or ppc64). They need to have something defined for those undefine constants, so the kernel module code for the fallback tp_syscall.* and tp_syscall.*.return probes compile and do not throw "'__NR_blah' undeclared" errors. Most of the added __NR_* defines are for aarch64, but the ppc64 also needs the __NR_compat_bdflush. --- runtime/linux/compat_unistd.h | 90 +++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/runtime/linux/compat_unistd.h b/runtime/linux/compat_unistd.h index c8199f3fa..07e6b1ac5 100644 --- a/runtime/linux/compat_unistd.h +++ b/runtime/linux/compat_unistd.h @@ -31,6 +31,9 @@ #ifndef __NR__newselect #define __NR__newselect (__NR_syscall_max + 1) #endif +#ifndef __NR_access +#define __NR_access (__NR_syscall_max + 1) +#endif #ifndef __NR_accept #define __NR_accept (__NR_syscall_max + 1) #endif @@ -46,18 +49,33 @@ #ifndef __NR_bpf #define __NR_bpf (__NR_syscall_max + 1) #endif +#ifndef __NR_chmod +#define __NR_chmod (__NR_syscall_max + 1) +#endif #ifndef __NR_chown32 #define __NR_chown32 (__NR_syscall_max + 1) #endif +#ifndef __NR_compat_bdflush +#define __NR_compat_bdflush (__NR_syscall_max + 1) +#endif #ifndef __NR_connect #define __NR_connect (__NR_syscall_max + 1) #endif #ifndef __NR_copy_file_range #define __NR_copy_file_range (__NR_syscall_max + 1) #endif +#ifndef __NR_creat +#define __NR_creat (__NR_syscall_max + 1) +#endif +#ifndef __NR_dup2 +#define __NR_dup2 (__NR_syscall_max + 1) +#endif #ifndef __NR_epoll_wait #define __NR_epoll_wait (__NR_syscall_max + 1) #endif +#ifndef __NR_eventfd +#define __NR_eventfd (__NR_syscall_max + 1) +#endif #ifndef __NR_execveat #define __NR_execveat (__NR_syscall_max + 1) #endif @@ -94,6 +112,9 @@ #ifndef __NR_getcpu #define __NR_getcpu (__NR_syscall_max + 1) #endif +#ifndef __NR_getdents +#define __NR_getdents (__NR_syscall_max + 1) +#endif #ifndef __NR_getegid32 #define __NR_getegid32 (__NR_syscall_max + 1) #endif @@ -109,6 +130,9 @@ #ifndef __NR_getpeername #define __NR_getpeername (__NR_syscall_max + 1) #endif +#ifndef __NR_getpgrp +#define __NR_getpgrp (__NR_syscall_max + 1) +#endif #ifndef __NR_getrandom #define __NR_getrandom (__NR_syscall_max + 1) #endif @@ -130,6 +154,9 @@ #ifndef __NR_io_pgetevents #define __NR_io_pgetevents (__NR_syscall_max + 1) #endif +#ifndef __NR_inotify_init +#define __NR_inotify_init (__NR_syscall_max + 1) +#endif #ifndef __NR_ipc #define __NR_ipc (__NR_syscall_max + 1) #endif @@ -139,18 +166,33 @@ #ifndef __NR_kexec_file_load #define __NR_kexec_file_load (__NR_syscall_max + 1) #endif +#ifndef __NR_lchown +#define __NR_lchown (__NR_syscall_max + 1) +#endif #ifndef __NR_lchown32 #define __NR_lchown32 (__NR_syscall_max + 1) #endif +#ifndef __NR_link +#define __NR_link (__NR_syscall_max + 1) +#endif #ifndef __NR_listen #define __NR_listen (__NR_syscall_max + 1) #endif +#ifndef __NR_lstat +#define __NR_lstat (__NR_syscall_max + 1) +#endif #ifndef __NR_lstat64 #define __NR_lstat64 (__NR_syscall_max + 1) #endif #ifndef __NR_membarrier #define __NR_membarrier (__NR_syscall_max + 1) #endif +#ifndef __NR_mkdir +#define __NR_mkdir (__NR_syscall_max + 1) +#endif +#ifndef __NR_mknod +#define __NR_mknod (__NR_syscall_max + 1) +#endif #ifndef __NR_mlock2 #define __NR_mlock2 (__NR_syscall_max + 1) #endif @@ -196,6 +238,15 @@ #ifndef __NR_open #define __NR_open (__NR_syscall_max + 1) #endif +#ifndef __NR_pause +#define __NR_pause (__NR_syscall_max + 1) +#endif +#ifndef __NR_pipe +#define __NR_pipe (__NR_syscall_max + 1) +#endif +#ifndef __NR_poll +#define __NR_poll (__NR_syscall_max + 1) +#endif #ifndef __NR_preadv2 #define __NR_preadv2 (__NR_syscall_max + 1) #endif @@ -208,6 +259,9 @@ #ifndef __NR_readdir #define __NR_readdir (__NR_syscall_max + 1) #endif +#ifndef __NR_readlink +#define __NR_readlink (__NR_syscall_max + 1) +#endif #ifndef __NR_recv #define __NR_recv (__NR_syscall_max + 1) #endif @@ -217,12 +271,21 @@ #ifndef __NR_recvmsg #define __NR_recvmsg (__NR_syscall_max + 1) #endif +#ifndef __NR_rename +#define __NR_rename (__NR_syscall_max + 1) +#endif #ifndef __NR_renameat2 #define __NR_renameat2 (__NR_syscall_max + 1) #endif +#ifndef __NR_rmdir +#define __NR_rmdir (__NR_syscall_max + 1) +#endif #ifndef __NR_rseq #define __NR_rseq (__NR_syscall_max + 1) #endif +#ifndef __NR_select +#define __NR_select (__NR_syscall_max + 1) +#endif #ifndef __NR_semctl #define __NR_semctl (__NR_syscall_max + 1) #endif @@ -322,6 +385,9 @@ #ifndef __NR_ssetmask #define __NR_ssetmask (__NR_syscall_max + 1) #endif +#ifndef __NR_stat +#define __NR_stat (__NR_syscall_max + 1) +#endif #ifndef __NR_stat64 #define __NR_stat64 (__NR_syscall_max + 1) #endif @@ -334,9 +400,18 @@ #ifndef __NR_stime #define __NR_stime (__NR_syscall_max + 1) #endif +#ifndef __NR_symlink +#define __NR_symlink (__NR_syscall_max + 1) +#endif #ifndef __NR_sync_file_range #define __NR_sync_file_range (__NR_syscall_max + 1) #endif +#ifndef __NR__sysctl +#define __NR__sysctl (__NR_syscall_max + 1) +#endif +#ifndef __NR_sysfs +#define __NR_sysfs (__NR_syscall_max + 1) +#endif #ifndef __NR_truncate #define __NR_truncate (__NR_syscall_max + 1) #endif @@ -349,6 +424,21 @@ #ifndef __NR_umount #define __NR_umount (__NR_syscall_max + 1) #endif +#ifndef __NR_unlink +#define __NR_unlink (__NR_syscall_max + 1) +#endif +#ifndef __NR_uselib +#define __NR_uselib (__NR_syscall_max + 1) +#endif +#ifndef __NR_ustat +#define __NR_ustat (__NR_syscall_max + 1) +#endif +#ifndef __NR_utimes +#define __NR_utimes (__NR_syscall_max + 1) +#endif +#ifndef __NR_vfork +#define __NR_vfork (__NR_syscall_max + 1) +#endif #ifndef __NR_waitpid #define __NR_waitpid (__NR_syscall_max + 1) #endif -- 2.43.5