| [PATCH] exclude some arm EABI obsolete syscalls |
| |
| Upstream-Status: Pending |
| |
| some syscalls are obsolete and no longer available for EABI, exclude them to |
| fix the below error: |
| In file included from qemu-seccomp.c:16:0: |
| qemu-seccomp.c:28:7: error: '__NR_select' undeclared here (not in a function) |
| { SCMP_SYS(select), 252 }, |
| ^ |
| qemu-seccomp.c:36:7: error: '__NR_mmap' undeclared here (not in a function) |
| { SCMP_SYS(mmap), 247 }, |
| ^ |
| qemu-seccomp.c:57:7: error: '__NR_getrlimit' undeclared here (not in a function) |
| { SCMP_SYS(getrlimit), 245 }, |
| ^ |
| qemu-seccomp.c:96:7: error: '__NR_time' undeclared here (not in a function) |
| { SCMP_SYS(time), 245 }, |
| ^ |
| qemu-seccomp.c:185:7: error: '__NR_alarm' undeclared here (not in a function) |
| { SCMP_SYS(alarm), 241 }, |
| |
| please refer source files: |
| arch/arm/include/uapi/asm/unistd.h |
| or kernel header: |
| /usr/include/asm/unistd.h |
| |
| Signed-off-by: Roy.Li <rongqing.li@windriver.com> |
| --- |
| qemu-seccomp.c | 13 ++++++++----- |
| 1 file changed, 8 insertions(+), 5 deletions(-) |
| |
| diff --git a/qemu-seccomp.c b/qemu-seccomp.c |
| index df75d9c..0e577f8 100644 |
| --- a/qemu-seccomp.c |
| +++ b/qemu-seccomp.c |
| @@ -35,15 +35,21 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = { |
| { SCMP_SYS(timer_settime), 255 }, |
| { SCMP_SYS(timer_gettime), 254 }, |
| { SCMP_SYS(futex), 253 }, |
| +#if !defined(__ARM_EABI__) |
| { SCMP_SYS(select), 252 }, |
| + { SCMP_SYS(time), 245 }, |
| + { SCMP_SYS(alarm), 241 }, |
| + { SCMP_SYS(getrlimit), 245 }, |
| + { SCMP_SYS(mmap), 247 }, |
| + { SCMP_SYS(socketcall), 250 }, |
| + { SCMP_SYS(ipc), 245 }, |
| +#endif |
| { SCMP_SYS(recvfrom), 251 }, |
| { SCMP_SYS(sendto), 250 }, |
| - { SCMP_SYS(socketcall), 250 }, |
| { SCMP_SYS(read), 249 }, |
| { SCMP_SYS(io_submit), 249 }, |
| { SCMP_SYS(brk), 248 }, |
| { SCMP_SYS(clone), 247 }, |
| - { SCMP_SYS(mmap), 247 }, |
| { SCMP_SYS(mprotect), 246 }, |
| { SCMP_SYS(execve), 245 }, |
| { SCMP_SYS(open), 245 }, |
| @@ -58,7 +64,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = { |
| { SCMP_SYS(bind), 245 }, |
| { SCMP_SYS(listen), 245 }, |
| { SCMP_SYS(semget), 245 }, |
| - { SCMP_SYS(ipc), 245 }, |
| { SCMP_SYS(gettimeofday), 245 }, |
| { SCMP_SYS(readlink), 245 }, |
| { SCMP_SYS(access), 245 }, |
| @@ -104,7 +109,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = { |
| { SCMP_SYS(times), 245 }, |
| { SCMP_SYS(exit), 245 }, |
| { SCMP_SYS(clock_gettime), 245 }, |
| - { SCMP_SYS(time), 245 }, |
| { SCMP_SYS(restart_syscall), 245 }, |
| { SCMP_SYS(pwrite64), 245 }, |
| { SCMP_SYS(nanosleep), 245 }, |
| @@ -194,7 +198,6 @@ static const struct QemuSeccompSyscall seccomp_whitelist[] = { |
| { SCMP_SYS(lstat64), 241 }, |
| { SCMP_SYS(sendfile64), 241 }, |
| { SCMP_SYS(ugetrlimit), 241 }, |
| - { SCMP_SYS(alarm), 241 }, |
| { SCMP_SYS(rt_sigsuspend), 241 }, |
| { SCMP_SYS(rt_sigqueueinfo), 241 }, |
| { SCMP_SYS(rt_tgsigqueueinfo), 241 }, |
| -- |
| 2.1.4 |
| |