genode/repos/base-linux
Norman Feske fdb1a4dd88 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
2021-05-05 11:35:31 +02:00
..
etc base: remove SPEC variables of boards (fix #3971) 2021-01-25 13:58:09 +01:00
lib base-linux: enabled seccomp 2020-05-27 11:56:46 +02:00
recipes depot: update recipe hashes 2021-04-20 12:10:58 +02:00
run lx_hybrid_errno.run: add missing parent services 2020-03-26 11:38:54 +01:00
src base-linux: avoid legacy syscalls 2021-05-05 11:35:31 +02:00
README Move repositories to 'repos/' subdirectory 2014-05-14 16:08:00 +02:00

This repository contains the Linux-specific implementation of Genode.