FS#63516 - Qemu 4.1.0 started through libvirt won't boot virtual machines

Attached to Project: Arch Linux
Opened by Ruben Van Boxem (rubenvb) - Wednesday, 21 August 2019, 14:36 GMT
Last edited by Doug Newgard (Scimmia) - Saturday, 23 November 2019, 16:23 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Description:
Since upgrading to qemu 4.1.0-1, libvirtd (through virt-manager) throws following error when trying to start an existing VM:
---
Error starting domain: Timed out during operation: cannot acquire state change lock (held by monitor=remoteDispatchDomainCreate)

Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 75, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 111, in tmpcb
callback(*args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 66, in newfn
ret = fn(self, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/domain.py", line 1279, in startup
self._backend.create()
File "/usr/lib/python3.7/site-packages/libvirt.py", line 1089, in create
if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirt.libvirtError: Timed out during operation: cannot acquire state change lock (held by monitor=remoteDispatchDomainCreate)
---
journalctl -u libvirtd shows (translated from Dutch, sorry about that:
---
connecting zith monitor socket failed: Connection refused
operation failed: pool 'default' already exists with uuid be802c6d-bfe7-4f43-97b2-7a35cd4e8be5
internal error: End of file from qemu monitor
Cannot start job (query, none, none) for domain Windows; current job is (async nested, none, start) >
---
Downgrading to qemu 4.0.0-3 lets everything work as expected.

Additional info:
* qemu 4.1.0-1
* libvirt 5.5.0-1
* linux 5.2.9.arch1-1

Steps to reproduce:
either start a VM from virt-manager or do "virsh start <domain name>". Both will hang or time out.
I'm not sure if plainly starting Qemu directly will lead to the same issue (I can't run the libvirt commandline in my terminal due to some socket fd missing).
This task depends upon

Closed by  Doug Newgard (Scimmia)
Saturday, 23 November 2019, 16:23 GMT
Reason for closing:  Fixed
Comment by David J. Haines (dhaines) - Monday, 26 August 2019, 00:18 GMT
I am experiencing the same erroneous behavior, as well as similar non-functional behavior with Terraform / terraform-libvirt-provider.
Comment by chriscjsus (chriscjsus) - Wednesday, 11 September 2019, 06:35 GMT
You need libvirt > 5.5. Install libvirt 5.6 from community-testing and qemu 4.1 will boot when started through libvirt (it did for me).

Loading...