Bug 820205

Summary: Errors displayed when share one USB device to two guests simultaneously
Product: Red Hat Enterprise Linux 6 Reporter: yuping zhang <yupzhang>
Component: libusb1Assignee: Hans de Goede <hdegoede>
Status: CLOSED ERRATA QA Contact: Iveta Wiedermann <isenfeld>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.3CC: cfergeau, dblechte, dyasny, gkong, isenfeld, jwu, mzhan, pbandark, rwu, tzheng, zpeng
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libusb1-1.0.9-0.6.rc1.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-21 08:23:10 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:
Attachments:
Description Flags
spice-debug log none

Description yuping zhang 2012-05-09 11:46:10 UTC
Created attachment 583233 [details]
spice-debug log

Description of problem:
Share one USB device to two guests at the same time,the usb device redirect to host and error message display:
 usbredirhost error: submitting bulk transfer on ep 02: -1

Version-Release number of selected component (if applicable):
virt-viewer-0.5.2-8.el6.x86_64

How reproducible:
always

Steps to Reproduce:
1.Configure usb redirection in two guests according to https://fedoraproject.org/wiki/Features/UsbNetworkRedirection
2.Install spice-usb-share-win to the two guests.
3.Use virt-viewer connect to the first guest,share USB to it by click File->USB device selection->Select the USB device.
4.Use virt-viewer connect to the second guest,share the same USB device to it.

Actual results:
The USB device redirect to guest,and virt-viewer throw up errors:
(virt-viewer:6684): GSpice-CRITICAL **: usbredirhost error: submitting bulk transfer on ep 02: -1

Expected results:
If the USB device can not be shared to two guest at same time,it's better to disable it when share it again,or give warning message when use it.

Additional info:
Attached the --spice-debug log

Comment 1 Daniel Berrangé 2012-07-26 17:38:12 UTC
It is not clear to me what component would be able to take responsibility for mutual exclusion of redirected USB devices. Ordinarly it would be libvirtd's job, but it doesn't have enough visibility into redirected devices. Perhaps the usb-redir library should be using some kind of lockfile to product against this. Re-assigning to usb-redir, for want of better ideas currently

Comment 2 Hans de Goede 2012-07-28 10:06:46 UTC
This bug is the result of an "interesting" interaction between libusb1 and usbredir, which is best fixed at the libusb1 level. I just completed a patch for libusb1 fixing this:
http://sourceforge.net/mailarchive/forum.php?thread_name=1343469273-6667-1-git-send-email-hdegoede%40redhat.com&forum_name=libusbx-devel

Changing component to libusb1, and adding devel-ack.

Comment 5 Hans de Goede 2012-09-01 13:40:46 UTC
This is fixed in libusb1-1.0.9-0.6.rc1.el6, moving to modified.

Comment 9 errata-xmlrpc 2013-02-21 08:23:10 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-0310.html

Comment 10 Hans de Goede 2013-04-12 14:06:01 UTC
*** Bug 951554 has been marked as a duplicate of this bug. ***