Problem with usb passthrough

arteta

New Member
Jan 12, 2015
8
1
1
Hi,


I use Proxmox 3.3 on a N54L MicroServer.
I added a vm adding usb passthrough:
usb0: host = 2-1


On the usb port, there is a key usb dvb (August DVB-T205). In vm (debian 7 or centos 7), I installed tvheadend. The result is very bad. I have a lot of dropped frames.

this log Proxmox often appeares:
January 12 10:24:30 p.m. Proxmox kernel: [1032.577223] usb 2-1: reset high-speed USB device using ehci number 4-pci
January 12 10:24:30 p.m. Proxmox kernel: [1032.795122] usb 2-1: reset high-speed USB device using ehci number 4-pci
January 12 10:24:30 p.m. Proxmox kernel: [1032.795122] usb 2-1: reset high-speed USB device using ehci number 4-pci

and log tvheadend:
janv. 12 22:13:59.032 [WARNING]:TS: Realtek RTL2832 (DVB-T)/TNT COFDM BB: 666,100 kHz/France 2 HD: H264 @ #220: Continuity counter error, 164 duplicate log lines suppressed

janv. 12 22:13:59.043 [WARNING]:TS: Realtek RTL2832 (DVB-T)/TNT COFDM BB: 666,100 kHz/France 2 HD: EAC3 @ #232: Continuity counter error, 1 duplicate log lines suppressed

janv. 12 22:13:59.043 [WARNING]:TS: Realtek RTL2832 (DVB-T)/TNT COFDM BB: 666,100 kHz/France 2 HD: Transport error indicator, 202 duplicate log lines suppressed



Using the qemu command info usb, usb 2 speed appears:
1.1 Device Port 1 Speed 480 Mb / s, Product RTL2838UHIDIR


Still, I really feel that the flow rate is flanged. To be sure that the problem is not from installation, I installed the 3.10 kernel on Proxmox (for the dvb drivers) and tvheadend. And the resustat is good.


I wanted to test the flow rate with the command hdparm -t. I have an average of 8 MB / s, while on Proxmox I to 22 MB / s.
is there anything I can do to use the usb passthrough normally?

Thank you and i'm really sorry for the "google traductor" English.
 
I had a similar problem with usb printer passthrough. Looks like a qemu bug. Try to pass through the entire USB controller.
 
thank you for the answer, how could I do this?
If I do that, I could not add more USB ports in new vm?


root@proxmox:~# lsusb -t

/: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/4p, 12M

/: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/5p, 12M

/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ohci-pci/5p, 12M

|__ Port 5: Dev 3, If 0, Class=audio, Driver=snd-usb-audio, 12M

|__ Port 5: Dev 3, If 1, Class=audio, Driver=snd-usb-audio, 12M

|__ Port 5: Dev 3, If 2, Class=audio, Driver=snd-usb-audio, 12M

|__ Port 5: Dev 3, If 3, Class=HID, Driver=usbhid, 12M

/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/4p, 480M

/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/5p, 480M

/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/5p, 480M

|__ Port 1: Dev 4, If 0, Class=vend., Driver=usbfs, 480M

|__ Port 1: Dev 4, If 1, Class=vend., Driver=usbfs, 480M


thank you !
 
hi,

For pass through the entire USB controller, it must be amd_iommu ? The N54L server does not it.

Thanks !
 
Sorry bumping this thread, but I struggle with this issue also. Solved it with a LXC instead of a VM.

This video also helps a lot: youtube.com/watch?v=5ipAI-iee8I