Hi,
Qemu has supported 3rd method for USB passthrough except two ways that you have pointed:
hostbus+hostport -- match for a specific physical port in the
host, any device which is plugged in there gets passed to the guest.
The method can resolve your all problems.
AFAICT, libvirt do not support this way at present. Any Plan?
CC'ing libvirt developer mailist.
Best regards,
-Gonglei
From: qemu-devel-bounces+arei.gonglei=huawei.com(a)nongnu.org
[mailto:qemu-devel-bounces+arei.gonglei=huawei.com@nongnu.org] On Behalf Of Yuanjing (D)
Sent: Monday, June 09, 2014 11:37 AM
To: qemu-devel(a)nongnu.org
Cc: Liuji (Jeremy)
Subject: [Qemu-devel] Question about how to distinguish a usb device in usb pass-through
feature
Hi,
I want to provide feature that pass-through host's usb device to guest os in
Openstack.
I have question about how to distinguish a usb device.
I have read some introductions and made some tests. I think qemu supports two ways to
identify a host usb device:
(1)host:bus.addr
(2)host:vendor_id:product_id
I think they both have restriction on some use cases:
(1) 'host:bus.addr' is not appropriate if more than one usb devices with the same
'host:bus.addr' in a host.
(2) The addr(device number) may change every time unplug/plug usb device of a host. One
this happen the guest may reboot failed with wrong host:bus.addr.
I noticed that Vmware supports technology 'autoconnection', they pass-through usb
device by using usb path of the device on the host(physical topology and port location).
Once unplug usb device and plug usb device again with the same usb path, the new device
appears and is connected to the guest.
I am not a qemu/system programmer and I apologize if I am missing something very
obvious.
Hope somebody can help me to find the best way to distinguish a usb device?
Thanks in advance
Show replies by date