USB devices with same vendor:product id
Maxime Accadia
maxime.accadia at univ-grenoble-alpes.fr
Mon Feb 3 13:20:47 UTC 2020
Hi,
We have a VM with several USB devices attached. Everything works well, but sometimes, after a reboot of the host, some usb device get a different bus/device number and that prevent the reboot of the VM :
-------
error: Failed to start domain xxx
error: internal error: Did not find USB device 04b9:0300 bus:1 device:5
-------
I guess this is because we have multiple usb devices with the same vendor/product ID :
-------
<hostdev mode='subsystem' type='usb' managed='yes'>
<source>
<vendor id='0x04b9'/>
<product id='0x0300'/>
<address bus='2' device='4'/>
</source>
<alias name='hostdev0'/>
<address type='usb' bus='0' port='2'/>
</hostdev>
<hostdev mode='subsystem' type='usb' managed='yes'>
<source>
<vendor id='0x0529'/>
<product id='0x0001'/>
<address bus='1' device='7'/>
</source>
<alias name='hostdev1'/>
<address type='usb' bus='0' port='1.2'/>
</hostdev>
<hostdev mode='subsystem' type='usb' managed='yes'>
<source>
<vendor id='0x0529'/>
<product id='0x0001'/>
<address bus='2' device='3'/>
</source>
<alias name='hostdev2'/>
<address type='usb' bus='0' port='1.4'/>
</hostdev>
<hostdev mode='subsystem' type='usb' managed='yes'>
<source>
<vendor id='0x04b9'/>
<product id='0x0300'/>
<address bus='1' device='6'/>
</source>
<alias name='hostdev3'/>
<address type='usb' bus='0' port='1.1'/>
</hostdev>
-------
Any idea on how to handle this case ?
We were thinking about using udev, but it seems that libvirt only supports vendor/id (not unique in our case) and bus/device (not predictable) to identify usb devices.
Thanks,
Maxime Accadia
P.S. We use libvirt 4.0.0 on Ubuntu 18.04
More information about the libvirt-users
mailing list