mirror of
https://github.com/mmueller41/genode.git
synced 2026-01-21 12:32:56 +01:00
base-linux: avoid legacy syscalls
Until now, Genode's Linux system call bindings were based on original Unix system calls that were later superseded by more flexibile variants. E.g., 'openat' is a modern version of 'open'. Even though Linux upholds the compatiblity with the original versions for existing architectures like x86, the legacy syscalls are absent for the recently added AARCH64 architecture. A good overview of the system calls accross the prominent architectures can be found at https://chromium.googlesource.com/chromiumos/docs/+/master/constants/syscalls.md This patch updates Genode's syscall bindings to avoid legacy versions, thereby easing the support for AARCH64. The used "modern" versions were introduced back in Linux version 2 days. So we are fine to rely on them. The patch slightly changes the signature for lx_stat because this system call is merely used to check for the existance of a file and its size. The new name 'lx_stat_size' draws a closer connection to its use case. That said, the stat syscall has not been updated to the modern statx since statx is still a fairly recent addition. Issue #4136
This commit is contained in:
@@ -90,9 +90,9 @@ class Filter
|
||||
_add_allow_rule(SCMP_SYS(recvmsg));
|
||||
_add_allow_rule(SCMP_SYS(write));
|
||||
_add_allow_rule(SCMP_SYS(poll));
|
||||
_add_allow_rule(SCMP_SYS(epoll_create));
|
||||
_add_allow_rule(SCMP_SYS(epoll_create1));
|
||||
_add_allow_rule(SCMP_SYS(epoll_ctl));
|
||||
_add_allow_rule(SCMP_SYS(epoll_wait));
|
||||
_add_allow_rule(SCMP_SYS(epoll_pwait));
|
||||
_add_allow_rule(SCMP_SYS(close));
|
||||
_add_allow_rule(SCMP_SYS(munmap));
|
||||
_add_allow_rule(SCMP_SYS(dup));
|
||||
|
||||
Reference in New Issue
Block a user