Libvirt error when launching VM

Hi,
I have some trouble with the Virtual Machine Manager that somehow decided not to launch VMs anymore.
When I power on my virtual machine (it’s dubbed Win10) from the Virtual Machine Manager GUI, I have the following error:

Error starting domain: internal error: process exited while connecting to monitor

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 72, in cb_wrapper
    callback(asyncjob, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 108, in tmpcb
    callback(*args, **kwargs)
  File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 57, in newfn
    ret = fn(self, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/object/domain.py", line 1402, in startup
    self._backend.create()
  File "/usr/lib/python3.10/site-packages/libvirt.py", line 1362, in create
    raise libvirtError('virDomainCreate() failed')
libvirt.libvirtError: internal error: process exited while connecting to monitor

Here is the relevant part of /var/log/libvirt/qemu/Win10.log

2022-08-19 18:50:23.691+0000: starting up libvirt version: 8.6.0, qemu version: 7.0.0, kernel: 5.15.60-1-MANJARO, hostname: pavilion73
LC_ALL=C \
PATH=/usr/local/sbin:/usr/local/bin:/usr/bin \
HOME=/var/lib/libvirt/qemu/domain-3-Win10 \
XDG_DATA_HOME=/var/lib/libvirt/qemu/domain-3-Win10/.local/share \
XDG_CACHE_HOME=/var/lib/libvirt/qemu/domain-3-Win10/.cache \
XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain-3-Win10/.config \
/usr/bin/qemu-system-x86_64 \
-name guest=Win10,debug-threads=on \
-S \
-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain-3-Win10/master-key.aes"}' \
-machine pc-q35-6.2,usb=off,vmport=off,dump-guest-core=off,memory-backend=pc.ram \
-accel kvm \
-cpu Skylake-Client-IBRS,ss=on,vmx=on,pdcm=on,hypervisor=on,tsc-adjust=on,clflushopt=on,umip=on,md-clear=on,stibp=on,arch-capabilities=on,ssbd=on,xsaves=on,pdpe1gb=on,ibpb=on,ibrs=on,amd-stibp=on,amd-ssbd=on,rsba=on,skip-l1dfl-vmentry=on,pschange-mc-no=on,hle=off,rtm=off,hv-time=on,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0x1fff \
-m 4096 \
-object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":4294967296}' \
-overcommit mem-lock=off \
-smp 2,sockets=2,cores=1,threads=1 \
-uuid 01d70b71-806b-4ad7-b80e-0b1bcecf640a \
-no-user-config \
-nodefaults \
-chardev socket,id=charmonitor,fd=33,server=on,wait=off \
-mon chardev=charmonitor,id=monitor,mode=control \
-rtc base=localtime \
-no-shutdown \
-global ICH9-LPC.disable_s3=1 \
-global ICH9-LPC.disable_s4=1 \
-boot strict=on \
-device '{"driver":"pcie-root-port","port":16,"chassis":1,"id":"pci.1","bus":"pcie.0","multifunction":true,"addr":"0x2"}' \
-device '{"driver":"pcie-root-port","port":17,"chassis":2,"id":"pci.2","bus":"pcie.0","addr":"0x2.0x1"}' \
-device '{"driver":"pcie-root-port","port":18,"chassis":3,"id":"pci.3","bus":"pcie.0","addr":"0x2.0x2"}' \
-device '{"driver":"pcie-root-port","port":19,"chassis":4,"id":"pci.4","bus":"pcie.0","addr":"0x2.0x3"}' \
-device '{"driver":"pcie-root-port","port":20,"chassis":5,"id":"pci.5","bus":"pcie.0","addr":"0x2.0x4"}' \
-device '{"driver":"pcie-root-port","port":21,"chassis":6,"id":"pci.6","bus":"pcie.0","addr":"0x2.0x5"}' \
-device '{"driver":"qemu-xhci","p2":15,"p3":15,"id":"usb","bus":"pci.2","addr":"0x0"}' \
-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.3","addr":"0x0"}' \
-blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/Win10.qcow2","node-name":"libvirt-3-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-3-format","read-only":false,"driver":"qcow2","file":"libvirt-3-storage","backing":null}' \
-device '{"driver":"virtio-blk-pci","bus":"pci.4","addr":"0x0","drive":"libvirt-3-format","id":"virtio-disk0","bootindex":1}' \
-blockdev '{"driver":"file","filename":"/home/firecat/Downloads/windows/Win10_21H2_English_x64.iso","node-name":"libvirt-2-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":true,"driver":"raw","file":"libvirt-2-storage"}' \
-device '{"driver":"ide-cd","bus":"ide.1","drive":"libvirt-2-format","id":"sata0-0-1"}' \
-blockdev '{"driver":"file","filename":"/home/firecat/Downloads/windows/virtio-win-0.1.215.iso","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw","file":"libvirt-1-storage"}' \
-device '{"driver":"ide-cd","bus":"ide.2","drive":"libvirt-1-format","id":"sata0-0-2"}' \
-netdev tap,fd=34,vhost=on,vhostfd=36,id=hostnet0 \
-device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":"52:54:00:0a:19:98","bus":"pci.1","addr":"0x0"}' \
-chardev pty,id=charserial0 \
-device '{"driver":"isa-serial","chardev":"charserial0","id":"serial0","index":0}' \
-chardev spicevmc,id=charchannel0,name=vdagent \
-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"com.redhat.spice.0"}' \
-device '{"driver":"usb-tablet","id":"input0","bus":"usb.0","port":"1"}' \
-audiodev '{"id":"audio1","driver":"spice"}' \
-spice port=0,disable-ticketing=on,image-compression=off,gl=on,rendernode=/dev/dri/by-path/pci-0000:00:02.0-render,seamless-migration=on \
-device '{"driver":"virtio-vga-gl","id":"video0","max_outputs":1,"bus":"pcie.0","addr":"0x1"}' \
-device '{"driver":"ich9-intel-hda","id":"sound0","bus":"pcie.0","addr":"0x1b"}' \
-device '{"driver":"hda-duplex","id":"sound0-codec0","bus":"sound0.0","cad":0,"audiodev":"audio1"}' \
-chardev spicevmc,id=charredir0,name=usbredir \
-device '{"driver":"usb-redir","chardev":"charredir0","id":"redir0","bus":"usb.0","port":"2"}' \
-chardev spicevmc,id=charredir1,name=usbredir \
-device '{"driver":"usb-redir","chardev":"charredir1","id":"redir1","bus":"usb.0","port":"3"}' \
-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.5","addr":"0x0"}' \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
2022-08-19 18:50:23.983+0000: shutting down, reason=failed

but it does not seem to be truly helpful

I read somewhere this had something to do with new groups related to libvirt, so I made the following changes to /etc/libvirt/qemu.conf

# The user for QEMU processes run by the system instance. It can be
# specified as a user name or as a user id. The qemu driver will try to
# parse this value first as a name and then, if the name doesn't exist,
# as a user id.
#
# Since a sequence of digits is a valid user name, a leading plus sign
# can be used to ensure that a user id will not be interpreted as a user
# name.
#
# Some examples of valid values are:
#
#       user = "qemu"   # A user named "qemu"
#       user = "+0"     # Super user (uid=0)
#       user = "100"    # A user named "100" or a user with uid=100
#
user = "root"

# The group for QEMU processes run by the system instance. It can be
# specified in a similar way to user.
group = "libvirt-qemu"

and I added my user to libvirt-qemu and checked back with groups that my user was in it

But it still does not work with the same error as before

I saw there was a new version of libvirt so I updated everything but I still have the bug with version 1:8.6.0.2 (and I even tried with the default and the new /etc/libvirt/qemu.conf but the new version fails with both)

Do you have any idea of what I else could try?

Did it ever work?
(probably)

When did it last work?

What has changed since then?

It was a VM I set up last March and it was working back then. I unfortunately cannot remember last time it was working correctly, but I remembered having the same problem some time ago and dismissing it because I did not really need the VM.
I think that I updated libvirt at least once between the time it was working and the first time it began failing.

I have here:

user = “myusername

group = “users”

no idea why you would have set it to the user “root” and group “libvirt-qemu”

your user, in order to use it, needs to be access the files …

Actually I followed this piece of advice https://forum.manjaro.org/t/stable-update-2022-03-14-kernels-kde-libreoffice-kodi-qt5-mozilla-networkmanager-pipewire/105493/62 (somehow I can’t include links here) and I think I found the same thing somewhere else
I’ll try your suggestion then

I set user = "*myusername*" (with my user name) and group = "users" as indicated in /etc/libvirt/qemu.conf and then did sudo systemctl restart libvirtd.service

I tried to launch the VM again but it’s still displaying the same error message :frowning_face:

but:
there is no error message
just the message that something failed

perhaps go through Arch wiki re libvirt again and confirm that everything is as it should be
… in your VM config as well …

When I say error message, I say the error that pops up when I click on “power on” in the GUI (“Virtual Machine Manager”) and that reads: “Error starting domain: internal error: qemu unexpectedly closed the monitor” and in the details section of the alert I have “libvirt.libvirtError: internal error: qemu unexpectedly closed the monitor”

I’ll check the Arch wiki then, I did not use it to configure libvirt at first (I think I just installed it via the package manager)

Destroying the VM could be an option too, although I prefer not to since it would take some time setting it up again

no need to do that in any case - you can always use and re-import the existing virtual disk image