USB Passthrough without Intel VT-d (I/O)

marigo

Renowned Member
Mar 7, 2014
34
3
73
Maybe someone could answer this question?

I have been testing with the USB passthrough in Proxmox 5.1-42. After a cold boot it's working most of the time but after some hours the VM, which the USB device has been virtually attached to, is not responding anymore.

After a reboot of the VM the USB device is also not visible on the Proxmox host. I have to plug-out-plug-in the USB device to be recognized by the operation system.

Now I saw that the CPU I use doesn't support the VT-d bit. Could this be the issue? Hardware related?

If this is the case I need a new CPU. :)
 
Now I saw that the CPU I use doesn't support the VT-d bit. Could this be the issue? Hardware related?
the missing vt-d is not an issue here (usb passthrough has nothing to do with this)
could very well be hardware related (as in the usb device or the controller)

but after some hours the VM, which the USB device has been virtually attached to, is not responding anymore.
what is not responding anymore? the vm or the usb device?

After a reboot of the VM the USB device is also not visible on the Proxmox host. I have to plug-out-plug-in the USB device to be recognized by the operation system.
how do you reboot ? do you reset the vm? if yes, try to stop and start it the next time, so that the usb device gets reassigned to the vm
 
the missing vt-d is not an issue here (usb passthrough has nothing to do with this)
could very well be hardware related (as in the usb device or the controller)


what is not responding anymore? the vm or the usb device?
The VM is not responding. The usb adapter is a TP-link TL-WN722N wireless adapter. (just for testing)

how do you reboot ? do you reset the vm? if yes, try to stop and start it the next time, so that the usb device gets reassigned to the vm
The USB device is lost in Proxmox. I will paste some logs from "dmesg" here.
Something with "unable to enumerate usb device".
 
This is the output of dmesg after the VM is stuck.

Code:
[10393.044673] ieee80211 phy1: Atheros AR9271 Rev:1
[10393.115135] usb 1-2.2: ath9k_htc: USB layer deinitialized
[10403.805893] usb 1-2.2: reset high-speed USB device number 6 using xhci_hcd
[10404.289982] usb 1-2.2: reset high-speed USB device number 6 using xhci_hcd
[10404.566955] usb 1-2.2: reset high-speed USB device number 6 using xhci_hcd
[10579.787898] usb 1-2.2: reset high-speed USB device number 6 using xhci_hcd
[10579.911983] usb 1-2.2: device firmware changed
[10579.913082] usb 1-2.2: USB disconnect, device number 6
[10579.995036] usb 1-2.2: new high-speed USB device number 7 using xhci_hcd
[10580.112489] usb 1-2.2: New USB device found, idVendor=0cf3, idProduct=9271
[10580.112493] usb 1-2.2: New USB device strings: Mfr=16, Product=32, SerialNumber=48
[10580.112496] usb 1-2.2: Product: USB2.0 WLAN
[10580.112497] usb 1-2.2: Manufacturer: ATHEROS
[10580.112499] usb 1-2.2: SerialNumber: 12345
[10580.113127] usb 1-2.2: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
[10580.425184] usb 1-2.2: ath9k_htc: Transferred FW: ath9k_htc/htc_9271-1.4.0.fw, size: 51008
[10580.674006] ath9k_htc 1-2.2:1.0: ath9k_htc: HTC initialized with 33 credits
[10759.422227] INFO: task kvm:14110 blocked for more than 120 seconds.
[10759.422317]       Tainted: P           O    4.13.13-5-pve #1
[10759.422380] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[10759.422458] kvm             D    0 14110      1 0x00000004
[10759.422462] Call Trace:
[10759.422473]  __schedule+0x3cc/0x850
[10759.422489]  schedule+0x36/0x80
[10759.422492]  schedule_timeout+0x1da/0x350
[10759.422495]  ? ida_remove+0xa2/0x120
[10759.422498]  wait_for_completion+0xb4/0x140
[10759.422500]  ? wait_for_completion+0xb4/0x140
[10759.422503]  ? wake_up_q+0x80/0x80
[10759.422512]  ath9k_hif_usb_disconnect+0x4c/0x150 [ath9k_htc]
[10759.422517]  usb_unbind_interface+0x72/0x260
[10759.422541]  device_release_driver_internal+0x155/0x210
[10759.422544]  device_release_driver+0x12/0x20
[10759.422547]  usb_driver_release_interface+0x77/0x80
[10759.422549]  proc_ioctl+0x203/0x240
[10759.422552]  usbdev_do_ioctl+0x576/0x1130
[10759.422557]  ? dput+0x67/0x1f0
[10759.422572]  usbdev_ioctl+0xe/0x20
[10759.422575]  do_vfs_ioctl+0xa3/0x610
[10759.422578]  ? ____fput+0xe/0x10
[10759.422582]  ? task_work_run+0x85/0xa0
[10759.422584]  SyS_ioctl+0x79/0x90
[10759.422587]  entry_SYSCALL_64_fastpath+0x33/0xa3
[10759.422590] RIP: 0033:0x7fdacbc5de07
[10759.422592] RSP: 002b:00007ffec775b7d8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[10759.422594] RAX: ffffffffffffffda RBX: 00007ffec775b7f0 RCX: 00007fdacbc5de07
[10759.422607] RDX: 00007ffec775b7e0 RSI: 00000000c0105512 RDI: 000000000000001f
[10759.422609] RBP: 00007fda8ef56220 R08: 00007ffec775b820 R09: 0000000000000200
[10759.422610] R10: 0000000000000000 R11: 0000000000000246 R12: 000000000000001f
[10759.422611] R13: 00007ffec775b9f0 R14: 00007fda9734c000 R15: 0000000000000000
When shutting down the VM (hard way -> STOP VM) It's not starting anymore.
Code:
TASK ERROR: start failed: org.freedesktop.systemd1.UnitExists: Unit 101.scope already exists.
Can it be my hardware?
 
Check. I will buy some new hardware and test it again.
Thx for support!
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!