Comment # 20 on bug 1219766 from Javier de San Pedro
Thanks for confirming. I have looked a bit into it. 

I cannot believe this, but the issue is indeed related to glibc 2.39.

glibc 2.39 has started to use the fchmodat2 syscall, which is used by mknod in
the VBoxCreateUSBNode.sh to set the 0660 mode on the vboxusb nodes. 

However, this script is called by udevd, and the systemd unit file for udev has
SystemCallFilter= enabled... but the systemd version that we have (v254) is too
old to understand the fchmodat2 syscall.

Therefore, mknod succeeds in creating the device node, but fails in chmod
0660'ing it, so it keeps the default 0640 due to the umask. 

Solution is to upgrade to systemd v255 or backport this commit
https://github.com/systemd/systemd/commit/6e10405aa25fe5e76b740d9ec59730e3f4470c7a 


<rant please_ignore="yes">
Yet another bug caused by an overzealous system call whitelist. As I said 3
years ago, these whitelists are my number #1 source of bugs on rolling distros. 
https://bugzilla.opensuse.org/show_bug.cgi?id=1190842#c8 

I don't even know why we would even bother with a system call filter on udevd.
It is running arbitrary shell scripts and by construction it must have kernel
module loading capabilities and whatnot! What threats could a syscall filter
for udevd possibly protect against ? Literally the only thing it does is
complicate debugging (no ptrace!) and create issues like this. </rant>


You are receiving this mail because: