[Pkg-rust-maintainers] Bug#1144050: virtiofsd crashes with SIGSYS (seccomp) on ther first request after a client connects
Jonas Andradas
j.andradas at gmail.com
Mon Aug 10 10:49:33 BST 2026
Package: virtiofsd
Version: 1.14.0-2
Severity: normal
X-Debbugs-Cc: j.andradas at gmail.com
Dear Maintainer,
virtiofsd crashes with SIGSYS (seccomp) on the first request after a
client connects, making any VM with a virtiofs share fail to start.
This has been 100% reproducible on my host, standalone, with no libvirt
involved.
virtiofsd accepts the vhost-user socket connection successfully, then
is killed by its own seccomp filter (SIGSYS) apparently while calling
getsockopt(2) (syscall 55) — likely a SO_PEERCRED check on the newly
accepted socket, immediately after "Client connected, servicing
requests".
REPRODUCTION
-------------
Terminal 1:
$ sudo /usr/libexec/virtiofsd --socket-path=/tmp/manual-vfsd.sock \
--shared-dir=/home/user/shares --log-level=debug
Terminal 2:
$ sudo qemu-system-x86_64 \
-machine q35 -m 2G \
-object memory-backend-memfd,id=mem,size=2G,share=on \
-numa node,memdev=mem \
-chardev socket,id=chr-vu-fs0,path=/tmp/manual-vfsd.sock \
-device vhost-user-fs-pci,chardev=chr-vu-fs0,tag=shares \
-display none -serial mon:stdio
Result in Terminal 1:
[...] INFO virtiofsd] Waiting for vhost-user socket connection...
[...] INFO virtiofsd] Client connected, servicing requests
[...] ERROR virtiofsd::util] Child process terminated by signal 31
Result in Terminal 2:
qemu-system-x86_64: -device vhost-user-fs-pci,...: Failed to read
msg header. Read 0 instead of 12. Original request 0.
qemu-system-x86_64: -device vhost-user-fs-pci,...: vhost_backend_init
failed: Protocol error
KERNEL AUDIT LOG (seccomp)
---------------------------
Reproduced with --seccomp=log instead of the default enforcing mode
to confirm the exact syscall via kauditd, rather than only guessing
from the SIGSYS:
audit: type=1326 audit(1786353556.601:476): auid=1000 uid=0 gid=0
ses=4 subj=virtiofsd pid=120515 comm="virtiofsd-backe"
exe="/usr/libexec/virtiofsd" sig=31 arch=c000003e syscall=55
compat=0 ip=0x7f1be9b075ca code=0x80000000
syscall=55 on x86_64 is getsockopt.
With --seccomp=log the process survives and services requests normally, which
would point that the seccomp filter seems to be the actual blocker.
WORKAROUND
----------
Running with --seccomp=none avoids the crash entirely; the daemon
then services requests without issue. This is only being used as a
temporary unblock, not a real fix, since it disables the syscall
sandbox for the whole process.
WHAT DOES *NOT* APPEAR TO BE THE CAUSE
---------------------------------------
This was originally suspected to be a package regression, but according to
/var/log/dpkg.log and dpkg.log.1, I don't see any recent updates to the
packages I suspect could be involved (e.g. virtiofsd or libseccomp2)
- Kernel: running 7.1.6+deb14-amd64 since this morning's boot
(2026-08-10 07:38); the first crash occurred at 08:26, before
any package changes were made today, and 7.1.6 itself had already
been installed
- systemd, libvirt: no relevant entries in dpkg.log/dpkg.log.1 for
either package in the recent window (grep across both current and
rotated logs came up empty).
- Domain XML / libvirt config: <memoryBacking> with memfd + shared
access is present and correct; <filesystem> block is standard
(driver type='virtiofs', accessmode='passthrough'). No config
changes preceded the first crash.
The trigger appears to be environmental rather than a version
bump in any of the obvious candidate packages, although I am a bit lost on what
could be the change/cause.
Happy to gather more information (strace, additional kernel/glibc version
detail, etc.) on request.
Thanks,
Jonas.
-- System Information:
Debian Release: forky/sid
APT prefers stable-security
APT policy: (500, 'stable-security'), (500, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 7.1.6+deb14-amd64 (SMP w/16 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages virtiofsd depends on:
ii libc6 2.42-17
ii libcap-ng0 0.9.3-1+b1
ii libgcc-s1 16.2.0-1
ii libseccomp2 2.6.1-1
ii uidmap 1:4.19.3-2
virtiofsd recommends no packages.
virtiofsd suggests no packages.
-- debconf-show failed
More information about the Pkg-rust-maintainers
mailing list