Not need for new syscall
Not need for new syscall
Posted May 31, 2019 6:56 UTC (Fri) by koenkooi (subscriber, #71861)In reply to: Not need for new syscall by Cyberax
Parent article: A ring buffer for epoll
* sys_accept4() was added in 2.6.28
* sys_accept4() was added for ARM in 2.6.36
* (e)glibc built against 2.6.32 headers on and ARM board running 2.6.32
With help from the systemd folks I tracked it down to accept4 missing, so I applied http://lists.infradead.org/pipermail/linux-arm-kernel/201... to the 2.6.32 kernel. Still a 3 minute delay. That's when I realized I needed to build eglibc against the patched 2.6.32 headers as well as patching the kernel. Running a kernel with the new syscall hooked up is not enough!
So everytime a new syscall gets proposed that is desired by the base layers in the OS I keep an eye on the ARM syscall list to avoid surprises. Marcin keeps this table up to date: https://fedora.juszkiewicz.com.pl/syscalls.html
Posted May 31, 2019 13:50 UTC (Fri)
by corbet (editor, #1)
[Link] (1 responses)
Posted May 31, 2019 14:27 UTC (Fri)
by cyphar (subscriber, #110703)
[Link]
That's not really a problem with new system calls; it's about how they are implemented in the kernel. The good news is that this situation has gotten a lot better and continues to improve. A lot of the system-call boilerplate is being unified across architectures, and it's increasingly expected that new system calls will be enabled for most or all architectures from the outset.
System calls and architectures
System calls and architectures