is anyone working on implementing the following linux syscalls?
There's Linux binary-only software which seems to require it.
(In reply to Bjoern A. Zeeb from comment #0)
Heh, we just implemented memfd_create in terms of shm_open2. I'll take a look at implementing the Linux syscall version- it should be fairly simple now that we implement everything it needs.
A commit references this bug:
Date: Mon Jun 29 03:09:16 UTC 2020
New revision: 362769
linuxolator: implement memfd_create syscall
This effectively mirrors our libc implementation, but with minor fudging --
name needs to be copied in from userspace, so we just copy it straight into
stack-allocated memfd_name into the correct position rather than allocating
memory that needs to be cleaned up.
The sealing-related fcntl(2) commands, F_GET_SEALS and F_ADD_SEALS, have
also been implemented now that we support them.
Note that this implementation is still not quite at feature parity w.r.t.
the actual Linux version; some caveats, from my foggy memory:
- Need to implement SHM_GROW_ON_WRITE, default for memfd (in progress)
- LTP wants the memfd name exposed to fdescfs
- Linux allows open() of an fdescfs fd with O_TRUNC to truncate after dup.
Interested parties can install and run LTP from ports (devel/linux-ltp) to
confirm any fixes.
Reviewed by: kib, trasz
Differential Revision: https://reviews.freebsd.org/D21845