You are not logged in.
Hello there,
Before I open a bug report I just wanna ask here: Does anybody around here experiences the same with KVM/QEMU?
On my current configuration (all updates installed) since like one and a half week I cannot pass USB devices (like USB-headset, cardreader) through KVM VMs.
It worked for months before.
The error message is quite strange because it tells about VFIO *PCI interface* problems while there is an USB *device* passed through.
virsh # start someVm
error: Failed to start domain someVm
error: Nicht unterstützte Konfiguration: host doesn't support VFIO PCI interface
(sorry for the German part in the message, export LC_ALL=C doesn't help here - it says "non supported configuration")
When I start the VM (any VM) using virt-manager I see a python traceback output resulting in the error shown above:
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 88, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 124, in tmpcb
callback(*args, **kwargs)
File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 83, in newfn
ret = fn(self, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/domain.py", line 1479, in startup
self._backend.create()
File "/usr/lib/python2.7/site-packages/libvirt.py", line 1039, in create
if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirtError: Nicht unterstützte Konfiguration: host doesn't support VFIO PCI interface
journalcontrol doesn't show any new info here.
Maybe the error is just a result of incompatibilities in libvirt.py and thus its contents missleading?
virsh configuration for the USB device is this (simply configured by virt-manager clicking)
# ... v---- is always there along with 3 other USB controllers
<controller type='usb' index='0' model='ich9-uhci3'>
<master startport='4'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x2'/>
</controller>
# ... v------ is there when I add an USB device
<hostdev mode='subsystem' type='usb' managed='yes'>
<source>
<vendor id='0x058f'/>
<product id='0x9540'/>
</source>
<address type='usb' bus='0' port='4'/>
</hostdev>
# ...
So - is it just me or do you experience similar issues?
Thanks,
W01f
Kernel: 4.9.21-1-lts
libvirt stuff - versions:
libvirt 3.2.0-2
libvirt-glib 1.0.0-1
libvirt-python2 3.2.0-2
libvirt-python3 3.2.0-1
virt-manager 1.4.1-2
qemu stuff - versions
qemu 2.8.0-2
qemu-arch-extra 2.8.0-2
Python stuff - versions:
$ python --version
Python 3.6.0
$ python2 --version
Python 2.7.13
Last edited by da_w01f (2017-04-19 09:06:27)
Offline
The so called "USB passthrough" isn't even done through VFIO but libusb, unless you passthrough the whole usb host controller (unlikely). Perhaps you mis-added an vfio pci device?
P.S. Why would you want multiple emulated USB host controllers? Also why not paste their entries as well?
Last edited by tom.ty89 (2017-04-12 13:02:26)
Offline
Hi,
"USB passthrough" isn't even done through VFIO but libusb
Exactly.
Perhaps you mis-added an vfio pci device?
No. /sys/kernel/iommu_groups/ is completely empty, if that's the right indicator.
Why would you want multiple emulated USB host controllers?
Ah yes, sorry - my bad. This is missleading as the problem also appears on VMs with the one standard USB Controller virt-manager adds when creating a new machine.
I should have used the configuration of a simpler VM as example.
Anyway - thats not part of the problem here I'm sure.
W01f
Offline
Offline
Thanks nazarianin - this seems to be the exact solution to my problem. Because of time issues I will not patch and recompile libvirt by myself for now - a quick temporary solution was to downgrade to libvirt-3.1.0-1 from march (with a small bunch of dependencies). I'm sure it will be fine with the next libvirt update as the patch is already upstram. I'll mark this as solved.
W01f
Offline