April 2, 20179 yr Hi everyone - I've been running unraid for about a year with only minor issues, and just started messing around with VMs in the past few months. I had my laptop fail on me, and since I've recently been using it more than 95% plus at home at my desk, I decided to give moving to a VM of Win 10 full time a try. Install was easy and I had no problems following all the videos and gudies out there to get the basics setup, including passing through a GPU and an extra USB 3 PCIE card I had lying around to be able to hot plug USB devices. Unfortunately, something weird has been happening ever since I started passing through the PCIE USB 3 card - USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller. At a random interval, usually several hours, the USB 3 card will stop working and my keyboard will suddenly stop getting passed through to the VM and will instead work on the console of unraid. Once that happened, restarting the VM wouldn't resolve the behavior (IE the USB 3 card wouldn't work and my keyboard wouldn't get passed through to the Windows 10 VM. Restarting the entire server would resolve the problem, but it kept happening. I tried messing with many of the VM settings, but I couldn't figure out why A) the card kept dropping from the VM despite it showing up to unraid and B) why the hell was it disconnecting my keyboard from the VM every time it happened, especially since my keyboard wasn't being passed through using the USB 3 card, it was being passed through as a specific USB device. Eventually I stopped passing through the USB card, and since then the VM has been going for several days and has been stable. Below are the particulars of the system, the XML of the VM, and the system devices. Any recommendations on what to try next would be greatly appreciated. Model: Custom M/B: LENOVO - ThinkServer TS440 CPU: Intel® Xeon® CPU E3-1245 v3 @ 3.40GHz HVM: Enabled IOMMU: Enabled Cache: 1024 kB, 256 kB, 8192 kB Memory: 12 GB (max. installable capacity 32 GB) Network: eth0: 1000 Mb/s, full duplex, mtu 1500 Kernel: Linux 4.9.10-unRAID x86_64 OpenSSL: 1.0.2k PCI Devices and IOMMU Groups IOMMU group 0 [8086:0c08] 00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller (rev 06) IOMMU group 1 [8086:0c01] 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06) [10de:1c03] 01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1) [10de:10f1] 01:00.1 Audio device: NVIDIA Corporation Device 10f1 (rev a1) IOMMU group 2 [8086:041a] 00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v3 Processor Integrated Graphics Controller (rev 06) IOMMU group 3 [8086:8c31] 00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 04) IOMMU group 4 [8086:8c3a] 00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04) [8086:8c3d] 00:16.3 Serial controller: Intel Corporation 8 Series/C220 Series Chipset Family KT Controller (rev 04) IOMMU group 5 [8086:153a] 00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-LM (rev 04) IOMMU group 6 [8086:8c2d] 00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 04) IOMMU group 7 [8086:8c10] 00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d4) IOMMU group 8 [8086:8c16] 00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d4) IOMMU group 9 [8086:8c18] 00:1c.4 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #5 (rev d4) IOMMU group 10 [8086:8c26] 00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 04) IOMMU group 11 [8086:8c56] 00:1f.0 ISA bridge: Intel Corporation C226 Series Chipset Family Server Advanced SKU LPC Controller (rev 04) [8086:2826] 00:1f.2 RAID bus controller: Intel Corporation C600/X79 series chipset SATA RAID Controller (rev 04) [8086:8c22] 00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 04) IOMMU group 12 [1283:8893] 03:00.0 PCI bridge: Integrated Technology Express, Inc. IT8893E PCIe to PCI Bridge (rev 41) IOMMU group 13 [104c:8241] 05:00.0 USB controller: Texas Instruments TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller (rev 02) CPU Thread Pairings cpu 0 <===> cpu 4 cpu 1 <===> cpu 5 cpu 2 <===> cpu 6 cpu 3 <===> cpu 7 USB Devices Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:8008 Intel Corp. Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 002: ID 8087:8000 Intel Corp. Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 002: ID 046d:c404 Logitech, Inc. TrackMan Wheel Bus 003 Device 004: ID 1532:005c Razer USA, Ltd Bus 003 Device 005: ID 1532:0203 Razer USA, Ltd Bus 003 Device 007: ID 1532:010d Razer USA, Ltd Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 004 Device 002: ID 0781:5583 SanDisk Corp. SCSI Devices [0:0:0:0] disk SanDisk Ultra Fit 1.00 /dev/sda 30.7GB [1:0:0:0] disk ATA WDC WD40EFRX-68W 0A82 /dev/sdb 4.00TB [2:0:0:0] disk ATA WDC WD40EFRX-68W 0A82 /dev/sdc 4.00TB [3:0:0:0] disk ATA SanDisk Ultra II 00RL /dev/sdd 960GB [4:0:0:0] disk ATA WDC WD40EFRX-68W 0A82 /dev/sde 4.00TB [5:0:0:0] cd/dvd PLDS DVD-RW DH16AESH 3L32 /dev/sr0 - Done <domain type='kvm' id='1'> <name>Win10</name> <uuid>1b385568-2b39-a0ba-8dca-7b5cf805b84a</uuid> <metadata> <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/> </metadata> <memory unit='KiB'>8388608</memory> <currentMemory unit='KiB'>8388608</currentMemory> <memoryBacking> <nosharepages/> </memoryBacking> <vcpu placement='static'>4</vcpu> <cputune> <vcpupin vcpu='0' cpuset='2'/> <vcpupin vcpu='1' cpuset='3'/> <vcpupin vcpu='2' cpuset='6'/> <vcpupin vcpu='3' cpuset='7'/> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-2.7'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader> <nvram>/etc/libvirt/qemu/nvram/1b385568-2b39-a0ba-8dca-7b5cf805b84a_VARS-pure-efi.fd</nvram> </os> <features> <acpi/> <apic/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> <vendor_id state='on' value='none'/> </hyperv> </features> <cpu mode='host-passthrough'> <topology sockets='1' cores='2' threads='2'/> </cpu> <clock offset='localtime'> <timer name='hypervclock' present='yes'/> <timer name='hpet' present='no'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/local/sbin/qemu</emulator> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback'/> <source file='/mnt/user/domains/Win10/vdisk1.img'/> <backingStore/> <target dev='hdc' bus='virtio'/> <boot order='1'/> <alias name='virtio-disk2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/virtISO/Windows10.iso'/> <backingStore/> <target dev='hda' bus='ide'/> <readonly/> <boot order='2'/> <alias name='ide0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/virtISO/virtio-win-0.1.102.iso'/> <backingStore/> <target dev='hdb' bus='ide'/> <readonly/> <alias name='ide0-0-1'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0' model='nec-xhci'> <alias name='usb'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='virtio-serial' index='0'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:41:eb:8c'/> <source bridge='virbr0'/> <target dev='vnet0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/0'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/0'> <source path='/dev/pts/0'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-1-Win10/org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='mouse' bus='ps2'> <alias name='input0'/> </input> <input type='keyboard' bus='ps2'> <alias name='input1'/> </input> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </source> <alias name='hostdev0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x1532'/> <product id='0x005c'/> <address bus='3' device='4'/> </source> <alias name='hostdev1'/> <address type='usb' bus='0' port='1'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x1532'/> <product id='0x0203'/> <address bus='3' device='5'/> </source> <alias name='hostdev2'/> <address type='usb' bus='0' port='2'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </memballoon> </devices> <seclabel type='none' model='none'/> <seclabel type='dynamic' model='dac' relabel='yes'> <label>+0:+100</label> <imagelabel>+0:+100</imagelabel> </seclabel> </domain>
April 2, 20179 yr Author So I did some more testing and something shook out - The USB 3 card and the Keyboard disconnecting from the VM were occuring at the same time, but one doesn't appear to have caused the other. Originally, I was using 2 Razer keyboards (a blackwidow chroma and a blackwidow ultimate) and when I stopped passing through the USB 3 card I also disconnected the second Razer keyboard and started using a cheap HP keyboard. I hooked back up the second Razer keyboard last night (while still not passing through the USB 3 card) and it disconnected the VM keyboard after 10 or 12 hours. So for whatever reason, unraid doesn't seem to like having 2 keyboards from the same manufacturer that are very similar (albeit they have different USB IDs).
April 2, 20179 yr If you search for that model number of the USB 3 card on the forum, you'll find at least one other person had problems with it:
April 4, 20179 yr Author Hi 1812, thanks for the reply. Yes it seems like someone else had similar issues with that card, so one mystery down. Unfortunately, this evening I came home and my keyboard had been passed back from my VM to UNRAID despite having only one razer keyboard hooked up. I don't know why this keeps happening, or how to go about diagnosing the problem. Here are is the log from the VM where my keyboard disconnects. <code> ErrorWarningSystemArrayLogin 2017-04-02 22:00:48.073+0000: starting up libvirt version: 2.4.0, qemu version: 2.7.1, hostname: TowerLC_ALL=C PATH=/bin:/sbin:/usr/bin:/usr/sbin HOME=/ QEMU_AUDIO_DRV=none /usr/local/sbin/qemu -name guest=Win10,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-1-Win10/master-key.aes -machine pc-i440fx-2.7,accel=kvm,usb=off,dump-guest-core=off,mem-merge=off -cpu host,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff,hv_vendor_id=none -drive file=/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd,if=pflash,format=raw,unit=0,readonly=on -drive file=/etc/libvirt/qemu/nvram/1b385568-2b39-a0ba-8dca-7b5cf805b84a_VARS-pure-efi.fd,if=pflash,format=raw,unit=1 -m 8192 -realtime mlock=off -smp 4,sockets=1,cores=2,threads=2 -uuid 1b385568-2b39-a0ba-8dca-7b5cf805b84a -display none -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-1-Win10/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-hpet -no-shutdown -boot strict=on -device nec-usb-xhci,id=usb,bus=pci.0,a=org.qemu.guest_agent.0 -device vfio-pci,host=01:00.0,id=hostdev0,bus=pci.0,addr=0x5 -device vfio-pci,host=06:00.0,id=hostdev1,bus=pci.0,addr=0x6 -device usb-host,hostbus=3,hostaddr=6,id=hostdev2,bus=usb.0,port=1 -device usb-host,hostbus=3,hostaddr=7,id=hostdev3,bus=usb.0,port=2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x8 -msg timestamp=onDomain id=1 is tainted: high-privilegesDomain id=1 is tainted: host-cpuchar device redirected to /dev/pts/0 (label charserial0)2017-04-04T00:48:32.758143Z qemu-system-x86_64: libusb_release_interface: -4 [NO_DEVICE]2017-04-04T00:48:32.758170Z qemu-system-x86_64: libusb_release_interface: -4 [NO_DEVICE]2017-04-04T00:48:32.758172Z qemu-system-x86_64: libusb_release_interface: -4 [NO_DEVICE]libusb: error [_open_sysfs_attr] open /sys/bus/usb/devices/3-9.4/bConfigurationValue failed ret=-1 errno=2 <\code>
April 4, 20179 yr plug back in your cheap hp keyboard and see if it makes it a few days. if it does, then the problem is with some setting in the razer keyboard (some sleep mode to save power??? or some sort of power cycle?? if the vm detects the device is removed from a non passed through usb port, it will forget the device) another option to consider is this, which would isolate one usb controller/port from unpaid and allow it to be a hot plug. then if the razer stays working, you know there is an issue with passing through devices on a non-isolated usb port/channel that's all i've got for now.
Archived
This topic is now archived and is closed to further replies.