[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] conf: fix a failure when detaching a usb device

On 03/26/2013 11:04 PM, Michal Privoznik wrote:
On 26.03.2013 15:17, Guannan Ren wrote:
  #virsh detach-device $guest usb.xml
  error: Failed to detach device from usb2.xml
  error: operation failed: host usb device vendor=0x0951 \
  product=0x1625 not found

This regresstion is due to a typo in matching function. The first
argument is always the usb device that we are checking for. If the
usb xml file provided by user contains bus and device info, we try
to search it by them, otherwise, we use vendor and product info.

The bug occurred only when detaching a usb device with no bus and
device info provided in the usb xml file.
  src/conf/domain_conf.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 4cae0d3..2b2f35c 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -8541,7 +8541,7 @@ static int
  virDomainHostdevMatchSubsysUSB(virDomainHostdevDefPtr a,
                                 virDomainHostdevDefPtr b)
-    if (b->source.subsys.u.usb.bus && b->source.subsys.u.usb.device) {
+    if (a->source.subsys.u.usb.bus && a->source.subsys.u.usb.device) {
          /* specified by bus location on host */
          if (a->source.subsys.u.usb.bus == b->source.subsys.u.usb.bus &&
              a->source.subsys.u.usb.device == b->source.subsys.u.usb.device)



    Thanks and pushed.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]