Bug 655280
Summary: | libvirt does not support vendor/product based USB device passthrough with QEMU | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Frank Casper <frankcasper> |
Component: | libvirt | Assignee: | Libvirt Maintainers <libvirt-maint> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | low | ||
Version: | 14 | CC: | aquini, berrange, clalance, crobinso, fnb.ml, itamar, jforbes, kayvansylvan, veillard, virt-maint |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2012-01-24 21:58:20 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
Frank Casper
2010-11-20 04:50:57 UTC
Let me say how much I appreciate the total lack of response to this issue. Please provide - The exact steps you are taking to reproduce the issue - The error message you are receiving (if any) - /var/log/libvirt/qemu/$vmname.log - virsh dumpxml $vmname I have a windows XP guest (virsh dumpxml below). The steps I am taking: 1) Start the guest with the iPhone plugged into the USB port. 2) Run iTunes in the guest, there is no iPhone showing up. 3) Go to the Device Manager and notice that the USB device is not connected to the guest. <domain type='kvm' id='1'> <name>WinXP</name> <uuid>0a108da7-a517-a31b-2444-b08cc07cca15</uuid> <memory>4194304</memory> <currentMemory>4194304</currentMemory> <vcpu>2</vcpu> <os> <type arch='x86_64' machine='pc-0.14'>hvm</type> <boot dev='hd'/> </os> <features> <acpi/> <apic/> <pae/> </features> <clock offset='localtime'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/qemu-kvm</emulator> <disk type='block' device='disk'> <driver name='qemu' type='raw'/> <source dev='/dev/vg_virtual/ibmlaptop'/> <target dev='hda' bus='ide'/> <alias name='ide0-0-0'/> <address type='drive' controller='0' bus='0' unit='0'/> </disk> <controller type='ide' index='0'> <alias name='ide0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <interface type='network'> <mac address='52:54:00:8a:d1:29'/> <source network='default'/> <target dev='vnet0'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/3'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/3'> <source path='/dev/pts/3'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <input type='tablet' bus='usb'> <alias name='input0'/> </input> <input type='mouse' bus='ps2'/> <graphics type='vnc' port='5900' autoport='yes'/> <sound model='ich6'> <alias name='sound0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </sound> <video> <model type='vga' vram='9216' heads='1'/> <alias name='video0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x05ac'/> <product id='0x1297'/> <address bus='1' device='4'/> </source> <alias name='hostdev0'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </memballoon> </devices> <seclabel type='dynamic' model='selinux'> <label>system_u:system_r:svirt_t:s0:c154,c991</label> <imagelabel>system_u:object_r:svirt_image_t:s0:c154,c991</imagelabel> </seclabel> </domain> In /var/log/libvirt/qemu/WinXP.log: 2011-06-27 15:28:51.729: starting up LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/bin/qemu-kvm -S -M pc-0.14 -enable-kvm -m 4096 -smp 2,sockets=2,cores=1,threads=1 -name WinXP -uuid 0a108da7-a517-a31b-2444-b08cc07cca15 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/WinXP.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -boot c -drive file=/dev/vg_virtual/ibmlaptop,if=none,id=drive-ide0-0-0,format=raw -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -netdev tap,fd=21,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:8a:d1:29,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -device usb-tablet,id=input0 -vnc 127.0.0.1:0 -vga std -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -device usb-host,hostbus=1,hostaddr=4,id=hostdev0 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 char device redirected to /dev/pts/1 husb: open device 1.4 husb: config #1 need -1 husb: 1 interfaces claimed for configuration 1 husb: grabbed usb device 1.4 husb: open device 1.4 husb: config #1 need -1 husb: 1 interfaces claimed for configuration 1 husb: grabbed usb device 1.4 husb: open device 1.4 [... the last 4 lines keep getting repeated ...] The iPhone (USB device 1.4) is plugged in and none of its components are mounted by the host device. In /var/log/messages, I see: Jun 27 19:58:12 heidegger setroubleshoot: SELinux is preventing /usr/sbin/usbmuxd from read access on the chr_file /dev/bus/usb/001/004. For complete SELinux messages. run sealert -l a95476b2-ff82-447c-8875-880eea17c8e6 The virt related SELinux booleans: # getsebool -a | grep virt virt_use_comm --> off virt_use_fusefs --> off virt_use_nfs --> off virt_use_samba --> off virt_use_sysfs --> off virt_use_usb --> on virt_use_xserver --> off And the related device file info: # ls -ltZ /dev/bus/usb/001 crw-rw-r--+ qemu qemu system_u:object_r:svirt_image_t:s0:c154,c991 004 crw-rw-r--. root root system_u:object_r:usb_device_t:s0 001 Is there anything else I can provide to facilitate getting USB pass-through to the libvirt/qemu/KVM guests working? Thanks! This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component. This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component. This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component. This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component. This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component. This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component. This is definitely fixed in at least f16. Closing since f14 is EOL |