
Hi I am using Hostusb hook on ovirt 3.5, centos6.6. And I am facing problem while adding usb drive to windows2012 as a guest. Usb device is passed through to the guest. But in windows device manager usb mass storage device shows an exclamation mark. And error message is: "This device cannot start: (Code 10)" In linux VM usb drive works without problem. how to fix it? here is xml of the windows guest: <!-- WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE OVERWRITTEN AND LOST. Changes to this xml configuration should be made using: virsh edit win2012 or other application using the libvirt API. --> <domstatus state='running' reason='booted' pid='22624'> <monitor path='/var/lib/libvirt/qemu/win2012.monitor' json='1' type='unix'/> <vcpus> <vcpu pid='22630'/> </vcpus> <qemuCaps> <flag name='vnc-colon'/> <flag name='no-reboot'/> <flag name='drive'/> <flag name='name'/> <flag name='uuid'/> <flag name='vnet-hdr'/> <flag name='migrate-qemu-tcp'/> <flag name='migrate-qemu-exec'/> <flag name='drive-cache-v2'/> <flag name='kvm'/> <flag name='drive-format'/> <flag name='vga'/> <flag name='0.10'/> <flag name='pci-device'/> <flag name='mem-path'/> <flag name='drive-serial'/> <flag name='migrate-qemu-unix'/> <flag name='chardev'/> <flag name='enable-kvm'/> <flag name='monitor-json'/> <flag name='balloon'/> <flag name='device'/> <flag name='smp-topology'/> <flag name='netdev'/> <flag name='rtc'/> <flag name='vhost-net'/> <flag name='no-kvm-pit'/> <flag name='tdf'/> <flag name='pci-configfd'/> <flag name='nodefconfig'/> <flag name='boot-menu'/> <flag name='name-process'/> <flag name='drive-readonly'/> <flag name='smbios-type'/> <flag name='vga-qxl'/> <flag name='spice'/> <flag name='vga-none'/> <flag name='migrate-qemu-fd'/> <flag name='boot-index'/> <flag name='hda-duplex'/> <flag name='drive-aio'/> <flag name='pci-multibus'/> <flag name='pci-bootindex'/> <flag name='ccid-passthru'/> <flag name='chardev-spicevmc'/> <flag name='virtio-tx-alg'/> <flag name='device-qxl-vga'/> <flag name='pci-multifunction'/> <flag name='virtio-blk-pci.ioeventfd'/> <flag name='sga'/> <flag name='virtio-blk-pci.event_idx'/> <flag name='virtio-net-pci.event_idx'/> <flag name='cache-directsync'/> <flag name='piix3-usb-uhci'/> <flag name='piix4-usb-uhci'/> <flag name='usb-ehci'/> <flag name='ich9-usb-ehci1'/> <flag name='usb-redir'/> <flag name='usb-hub'/> <flag name='no-shutdown'/> <flag name='cache-unsafe'/> <flag name='rombar'/> <flag name='no-acpi'/> <flag name='virtio-blk-pci.scsi'/> <flag name='blk-sg-io'/> <flag name='drive-copy-on-read'/> <flag name='cpu-host'/> <flag name='drive-iotune'/> <flag name='system_wakeup'/> <flag name='scsi-disk.channel'/> <flag name='scsi-block'/> <flag name='transaction'/> <flag name='block-job-async'/> <flag name='scsi-cd'/> <flag name='hda-micro'/> <flag name='dump-guest-memory'/> <flag name='balloon-event'/> <flag name='virtio-scsi-pci'/> <flag name='blockio'/> <flag name='disable-s3'/> <flag name='disable-s4'/> <flag name='usb-redir.filter'/> <flag name='ide-drive.wwn'/> <flag name='scsi-disk.wwn'/> <flag name='reboot-timeout'/> <flag name='dump-guest-core'/> <flag name='seamless-migration'/> <flag name='block-commit'/> <flag name='disable-ksm'/> <flag name='virtio-net-pci.__com_redhat_macvtap_compat'/> <flag name='drive-mirror'/> <flag name='blockdev-snapshot-sync'/> <flag name='qxl'/> <flag name='VGA'/> <flag name='cirrus-vga'/> <flag name='ipv6-migration'/> <flag name='vnc-share-policy'/> <flag name='mlock'/> <flag name='virtio-rng'/> <flag name='rng-random'/> <flag name='rng-egd'/> <flag name='pvpanic'/> <flag name='spice-file-xfer-disable'/> <flag name='host-pci-multidomain'/> <flag name='msg-timestamp'/> <flag name='device-del-event'/> </qemuCaps> <devices> <device alias='usb'/> <device alias='net0'/> <device alias='scsi0'/> <device alias='virtio-serial0'/> <device alias='balloon0'/> </devices> <domain type='kvm' id='30'> <name>win2012</name> <uuid>fd27bf56-334c-4c83-836d-81314c24bb7d</uuid> <memory unit='KiB'>1048576</memory> <currentMemory unit='KiB'>1048576</currentMemory> <vcpu placement='static' current='1'>16</vcpu> <cputune> <shares>1020</shares> </cputune> <sysinfo type='smbios'> <system> <entry name='manufacturer'>oVirt</entry> <entry name='product'>oVirt Node</entry> <entry name='version'>6-6.el6.centos.12.2</entry> <entry name='serial'>DE1EED73-4B49-6742-A2CD-3A24C43D4489</entry> <entry name='uuid'>fd27bf56-334c-4c83-836d-81314c24bb7d</entry> </system> </sysinfo> <os> <type arch='x86_64' machine='rhel6.5.0'>hvm</type> <smbios mode='sysinfo'/> </os> <features> <acpi/> </features> <cpu mode='custom' match='exact'> <model fallback='allow'>SandyBridge</model> <topology sockets='16' cores='1' threads='1'/> </cpu> <clock offset='variable' adjustment='0' basis='utc'> <timer name='rtc' tickpolicy='catchup'/> <timer name='pit' tickpolicy='delay'/> <timer name='hpet' present='no'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/libexec/qemu-kvm</emulator> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source startupPolicy='optional'/> <target dev='hdc' bus='ide'/> <readonly/> <serial></serial> <alias name='ide0-1-0'/> <address type='drive' controller='0' bus='1' target='0' unit='0'/> </disk> <disk type='file' device='disk' snapshot='no'> <driver name='qemu' type='raw' cache='none' error_policy='stop' io='threads'/> <source file='/rhev/data-center/d187f1d4-e03a-485f-ae2d-f4e4faafc27e/54a27720-48bb-48d4-aeed-2a5c411a45d6/images/39954256-98eb-4b15-99b0-9b855e40fa72/adbd284d-e0c2-4829-98a2-68d938f93e77'> <seclabel model='selinux' relabel='no'/> </source> <target dev='sda' bus='scsi'/> <serial>39954256-98eb-4b15-99b0-9b855e40fa72</serial> <boot order='1'/> <alias name='scsi0-0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <controller type='scsi' index='0' model='virtio-scsi'> <alias name='scsi0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </controller> <controller type='virtio-serial' index='0' ports='16'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </controller> <controller type='usb' index='0'> <alias name='usb0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='ide' index='0'> <alias name='ide0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <interface type='bridge'> <mac address='00:1a:4a:24:f2:00'/> <source bridge='ovirtmgmt'/> <bandwidth> </bandwidth> <target dev='vnet0'/> <model type='virtio'/> <filterref filter='vdsm-no-mac-spoofing'/> <link state='up'/> <boot order='2'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <console type='pty' tty='/dev/pts/1'> <source path='/dev/pts/1'/> <target type='virtio' port='0'/> <alias name='console0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channels/fd27bf56-334c-4c83-836d-81314c24bb7d.com.redhat.rhevm.vdsm'/> <target type='virtio' name='com.redhat.rhevm.vdsm'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channels/fd27bf56-334c-4c83-836d-81314c24bb7d.org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0'/> <alias name='channel1'/> <address type='virtio-serial' controller='0' bus='0' port='2'/> </channel> <input type='tablet' bus='usb'> <alias name='input0'/> </input> <input type='mouse' bus='ps2'/> <graphics type='vnc' port='5900' autoport='yes' keymap='en-us' passwd='*****' passwdValidTo='1970-01-01T00:00:01'> <listen type='network' address='10.64.0.201' network='vdsm-ovirtmgmt' fromConfig='0'/> </graphics> <video> <model type='cirrus' vram='32768' heads='1'/> <alias name='video0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x03f0'/> <product id='0x5307'/> <address bus='2' device='5'/> </source> <alias name='hostdev0'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </memballoon> </devices> <seclabel type='dynamic' model='selinux' relabel='yes'> <label>system_u:system_r:svirt_t:s0:c84,c423</label> <imagelabel>system_u:object_r:svirt_image_t:s0:c84,c423</imagelabel> </seclabel> </domain> </domstatus>