Hey, I tried to use usbip to access a USB3 device over the network. However, `usbip attach -r $HOST -b $BUS` on the client failed with > Failed attach request for unsupported USB speed: super-speed" I looked at drivers/usb/usbip/vhci_sysfs.c:150 and discovered USB_SPEED_SUPER wasn't in the list of supported USB speeds. I quickly tried to make it working by adding USB_SPEED_SUPER to the switch case. I was now able to attach the device, however the client complained about a bad usb cable and the hosts dmesg got filled with > [332349.125642] usbip-host 3-2: stub up > [332464.550074] usbip-host 3-2: recv a header, 0 > [332464.658740] usbip-host 3-2: reset SuperSpeed USB device number 2 using xhci_hcd > [332464.672536] usbip-host 3-2: device reset which comes from drivers/usb/usbip/stub_rx.c:549. It seems like usbip_recv gets packages that don't have the size of usbip_header. Is usbip specified for usb3? Is it possible to add support for it? Thanks in advance, -- Florian
>From 2b3aee13d093b73aaf42f88ccbf46db35250fc05 Mon Sep 17 00:00:00 2001 From: Florian Klink <flokli@xxxxxxxxx> Date: Thu, 18 Jun 2015 22:46:15 +0200 Subject: [PATCH] usbip: add support for USB_SPEED_SUPER --- drivers/usb/usbip/vhci_sysfs.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/usb/usbip/vhci_sysfs.c b/drivers/usb/usbip/vhci_sysfs.c index 211f43f..95339b7 100644 --- a/drivers/usb/usbip/vhci_sysfs.c +++ b/drivers/usb/usbip/vhci_sysfs.c @@ -148,6 +148,7 @@ static int valid_args(__u32 rhport, enum usb_device_speed speed) case USB_SPEED_FULL: case USB_SPEED_HIGH: case USB_SPEED_WIRELESS: + case USB_SPEED_SUPER: break; default: pr_err("Failed attach request for unsupported USB speed: %s\n", -- 2.4.2