** Description changed: [ Impact ] - * libvirtd crashs when users tries to hotplug a virtiofs into a VM - running in session mode (qemu:///session) + * libvirtd crashs when users tries to hotplug a virtiofs into a VM + running in session mode (qemu:///session) [ Test Plan ] - $ sudo apt install qemu-system-x86 libvirt-daemon-system libvirt-clients ovmf - $ sudo apt install virtiofsd uidmap + $ sudo apt install qemu-system-x86 \ + libvirt-daemon-system \ + libvirt-clients \ + ovmf \ + virtinst - $ cat vm.xml + $ sudo apt install virtiofsd uidmap + + $ cat vm.xml <domain type='qemu'> - <name>test</name> - <memory unit='MiB'>2048</memory> - <vcpu>2</vcpu> + <name>test</name> + <memory unit='MiB'>2048</memory> + <vcpu>2</vcpu> - <os> - <type arch='x86_64' machine='q35'>hvm</type> - </os> + <os> + <type arch='x86_64' machine='q35'>hvm</type> + </os> - <cpu mode='custom' match='exact'> - <model fallback='allow'>qemu64</model> - </cpu> + <cpu mode='custom' match='exact'> + <model fallback='allow'>qemu64</model> + </cpu> - <features> - <acpi/> - <apic/> - </features> + <features> + <acpi/> + <apic/> + </features> - <!-- Force TCG (no KVM) --> - <devices> - <emulator>/usr/bin/qemu-system-x86_64</emulator> + <!-- Force TCG (no KVM) --> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> - <controller type='pci' model='pcie-root'/> - <controller type='virtio-serial'/> + <controller type='pci' model='pcie-root'/> + <controller type='virtio-serial'/> - <console type='pty'/> - </devices> + <console type='pty'/> + </devices> - <!-- Required for virtio-fs --> - <memoryBacking> - <source type='memfd'/> - <access mode='shared'/> - </memoryBacking> + <!-- Required for virtio-fs --> + <memoryBacking> + <source type='memfd'/> + <access mode='shared'/> + </memoryBacking> </domain> - $ virsh -c qemu:///session define vm.xml - $ virsh -c qemu:///session start test - $ virt-xml -c qemu:///session test --update --add-device --filesystem type=mount,accessmode=passthrough,driver.type=virtiofs,source.dir=/home/ubuntu/tmp,target.dir=mnt + $ virsh -c qemu:///session define vm.xml + $ virsh -c qemu:///session start test + $ virt-xml -c qemu:///session test --update --add-device --filesystem type=mount,accessmode=passthrough,driver.type=virtiofs,source.dir=/home/ubuntu/tmp,target.dir=mnt - -> without the fix, libvirtd crashs - + -> without the fix, libvirtd crashs [ Where problems could occur ] - * This is one line fix that basically do a sanity check - however it enables the virtiofsd feature for session VMs, problems could - occur during the use of this feature. + * This is one line fix that basically do a sanity check + however it enables the virtiofsd feature for session VMs, problems could + occur during the use of this feature. [ Other Info ] - * Upstream has the fix starting from version v10.2 so Questing onwards is ok - We just need to backport it to Noble and eventually to Jammy. - + * Upstream has the fix starting from version v10.2 so Questing onwards is ok + We just need to backport it to Noble and eventually to Jammy. ---- Original report ---- Ubuntu 24.04.3 LTS libvirt-daemon 10.0.0-2ubuntu8.11 When adding a filesystem to a running VM on the session connection, libvirtd crashes. Steps to reproduce: - Make a VM on the session connection. I believe the details don't matter. Stop it. - Set the necessary "memory backing" parameters. $ virt-xml -c qemu:///session subVmTest1 --edit 1 --memorybacking access.mode=shared,source.type=memfd - Start the machine. $ virsh -c qemu:///session start subVmTest1 - Add a filesystem with virt-xml. $ virt-xml -c qemu:///session subVmTest1 --update --add-device --filesystem type=mount,accessmode=passthrough,driver.type=virtiofs,source.dir=/mnt,target.dir=mnt ERROR Error attempting device hotplug: End of file while reading data: Input/output error This will be in the journal: Jan 22 14:32:37 ubuntu systemd-coredump[2104]: [🡕] Process 1728 (libvirtd) of user 1000 terminated abnormally without generating a coredump. - Repeating the attempt fails differently. $ virt-xml -c qemu:///session subVmTest1 --update --add-device --filesystem type=mount,accessmode=passthrough,driver.type=virtiofs,source.dir=/mnt,target.dir=mnt ERROR Error attempting device hotplug: Cannot open log file: '/home/admin/.cache/libvirt/qemu/log/subVmTest1-fs0-virtiofsd.log': Device or resource busy The content of that file is: [2026-01-22T14:39:20Z WARN virtiofsd] Use of deprecated option format '-o': Please specify options without it (e.g., '--cache auto' instead of '-o cache=auto') [2026-01-22T14:39:20Z WARN virtiofsd::sandbox] Couldn't set the process uid as root: -1 [2026-01-22T14:39:20Z WARN virtiofsd::sandbox] Couldn't set the process gid as root: -1 [2026-01-22T14:39:20Z INFO virtiofsd] Waiting for vhost-user socket connection...
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2138902 Title: session libvirtd crashes when hot adding filesystems To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/2138902/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
