Bug 916837

Summary: detach-device can't remove usb device when using xml file
Product: Red Hat Enterprise Linux 7 Reporter: zhe peng <zpeng>
Component: libvirtAssignee: Gunannan Ren <gren>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.0CC: acathrow, cwei, dallan, dyuan, mzhan, weizhan
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libvirt-1.0.4-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-13 09:37:50 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description zhe peng 2013-03-01 05:32:23 UTC
Description:
detach-device can't remove usb device when using xml file

Versions
libvirt-1.0.2-1.el7.x86_64

How reproducible:
100%

Steps:
1:
#cat usb.xml
<hostdev mode='subsystem' type='usb' managed='yes'>
   <source>
     <vendor id='0x0951'/>
     <product id='0x1625'/>
   </source>
 </hostdev>

2: attach usb dev to guest
#virsh attach-device $guest usb.xml
Device attached successfully

3: detach usb dev from guest
#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


Expect result
Device detached successfully

Additional info:
this worked on rhel6.4.
If add <address bus='1' device='2'/> in usb.xml , can detach usb successful.

Comment 2 Gunannan Ren 2013-03-26 14:25:41 UTC
https://www.redhat.com/archives/libvir-list/2013-March/msg01481.html
patch send out.

Comment 3 Gunannan Ren 2013-03-27 02:39:01 UTC
commit a950f03e16dd958f821027aa5d396166163c3200
Author: Guannan Ren <gren>
Date:   Tue Mar 26 22:17:43 2013 +0800

    conf: fix a failure when detaching a usb device
    
     #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.

Comment 4 weizhang 2013-04-10 08:17:19 UTC
verify pass on
qemu-kvm-1.4.0-2.el7.x86_64
kernel-3.8.0-0.43.el7.x86_64
libvirt-1.0.4-1.el7.x86_64

usb device can be removed successfully

Comment 5 Ludek Smid 2014-06-13 09:37:50 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.