Bug 597947

Summary: QEMU could not open USB device
Product: [Community] Virtualization Tools Reporter: fkhp101
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: low    
Version: unspecifiedCC: ajschult784, berrange, crobinso, jtomko, xen-maint
Target Milestone: ---Keywords: HardwareEnablement
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
gentoo linux
Last Closed: 2015-03-16 15:25:09 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description fkhp101 2010-05-31 04:57:35 UTC
Description of problem:
vm configure to use usb device but can not use it.

log message in /var/log/libvirt/qemu/vm.log
husb: open device 5.3
/dev/bus/usb/005/003: Operation not permitted
Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 fkhp101 2010-08-20 06:06:07 UTC
this is because cgroup enabled and usb is blacklisted, so libviirtd can not
open it. the usb need to be added to cgroup devices, or do not enable cgroup.

http://bugs.gentoo.org/show_bug.cgi?id=329427#c1

Comment 2 Daniel Berrangé 2010-08-20 09:54:42 UTC
Ah, I forgot that USB devices appear as character device nodes. libvirt will need to be taught to set those up with cgroups like it already does for disks, serial ports & parallel ports.

Comment 3 Ján Tomko 2015-03-16 15:25:09 UTC
Fixed upstream by:
commit 5919afe3c664df9bacc47055bf7ebf320530582c
Author:     Diego Elio Pettenò <flameeyes>
AuthorDate: 2010-11-01 12:03:16 +0100
Commit:     Eric Blake <eblake>
CommitDate: 2010-11-01 10:19:51 -0600

    qemu: add the USB devices to the cgroup whitelist
    
    Make sure that the QEmu process within the cgroup can access the device
    file for the USB device that has to be connected to the virtual domain.

git describe: v0.8.5-6-g5919afe contains: v0.8.6~192