16 Mar 2010, 18:09

virt-manager: Error starting domain

Using KVM/virt-manager in Debian sid is interesing. You’ll get nice and fresh errors from time to time. KVM is constantly improving but you have to deal with unexpected changes from time to time which tend to break existing VMs.

With the latest version I’ve got this error:

Error starting domain: internal error unable to reserve PCI address 0:0:3

The long text:

Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/engine.py", line 589, in run_domain
vm.startup()
File "/usr/share/virt-manager/virtManager/domain.py", line 1208, in startup
self._backend.create()
File "/usr/lib/python2.5/site-packages/libvirt.py", line 317, in create
if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirtError: internal error unable to reserve PCI address 0:0:3

The solution was to edit the /etc/libvirt/qemu/<domain>.xml and change the conflicting PCI id. The line looked like this before:

<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>

and like that after the change:

<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>

Don’t forget to reload libvirt after this change.