You are not logged in.

#1 2018-01-10 07:48:16

SepArch
Member
Registered: 2017-10-17
Posts: 4

USBIP Error can't open vhci-hcd driver even after modprobe vhci-hcd

Hallo I am trying to attach a USB Device.

Server is Arch Linux (Host)
Client is also Arch Linux

[xxx@archlinux ~]$ lsmod | grep vhci_hcd
vhci_hcd               49152  0
usbip_core             32768  2 vhci_hcd,usbip_host
usbcore               282624  7 usbhid,usb_storage,vhci_hcd,usbip_host,xhci_pci,uas,xhci_hcd
usb_common             16384  3 vhci_hcd,usbcore,usbip_core

at client

[root@anarchy]: /home/owner># usbip list -r serverip
Exportable USB devices
======================
 - serverip
        1-1: SanDisk Corp. : Cruzer Blade (0781:5567)
           : /sys/devices/pci0000:00/0000:00:14.0/usb1/1-1
           : (Defined at Interface level) (00/00/00)


[root@anarchy]: /home/owner># lsmod | grep vhci
vhci_hcd               49152  0
usbip_core             32768  2 vhci_hcd,usbip_host
usbcore               282624  7 usbhid,vhci_hcd,usbip_host,ehci_hcd,ohci_pci,ohci_hcd,ehci_pci
usb_common             16384  3 vhci_hcd,usbcore,usbip_core


[root@anarchy]: /home/owner># usbip attach -r serverip -b 1-1
libusbip: error: udev_device_get_sysattr_value failed
usbip: error: open vhci_driver
usbip: error: query

I tried to google the problem but I can't find a solution. The Windows driver seems not even to list the devices sad

EDIT:
HERE the usbip --debug attach -r ip -b 1-1

usbip: debug: usbip.c:141:[run_command] running command: `attach'
libusbip: debug: vhci_driver.c:264:[usbip_vhci_driver_open] available ports: 16
libusbip: debug: vhci_driver.c:275:[usbip_vhci_driver_open] available controllers: 2
libusbip: debug: vhci_driver.c:128:[refresh_imported_device_list] controller 0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 0 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 1 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 2 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 3 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 4 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 5 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 6 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub hs port 7 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 8 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 9 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 10 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 11 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 12 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 13 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 14 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:68:[parse_status] hub ss port 15 status 4 speed 0 devid 0
libusbip: debug: vhci_driver.c:69:[parse_status] socket 0 lbusid 0-0
libusbip: debug: vhci_driver.c:104:[parse_status] exit
libusbip: error: udev_device_get_sysattr_value failed
usbip: error: open vhci_driver
usbip: error: query

Last edited by SepArch (2018-01-10 08:08:04)

Offline

#2 2018-01-10 15:06:12

quantasy
Member
Registered: 2018-01-10
Posts: 1

Re: USBIP Error can't open vhci-hcd driver even after modprobe vhci-hcd

I had the exact same problem!
I had to ?explicitly? update the usbip package which now is on 4.14.1.

Right now I am running
Linux matrix 4.15.0-1-MANJARO #1 SMP PREEMPT Sun Dec 24 07:39:02 UTC 2017 x86_64 GNU/Linux
with
usbip (usbip-utils 2.0)

And things are up and running again.

Last edited by quantasy (2018-01-10 15:24:25)

Offline

#3 2018-01-11 04:10:08

xsnake
Member
Registered: 2015-11-27
Posts: 11

Re: USBIP Error can't open vhci-hcd driver even after modprobe vhci-hcd

I, too, am having the same problem.

I just made a full system upgrade.

pacman -Ss usbip gives:

community/usbip 4.14-1 (linux-tools) [installed]
    An USB device sharing system over IP network

But I am still experiencing the issue. Perhaps this gets fixed with Linux 4.15, because I am currently running:

Linux 4.14.8-1-ARCH #1 SMP PREEMPT Wed Dec 20 21:27:44 UTC 2017 x86_64 GNU/Linux

Last edited by xsnake (2018-01-11 18:30:37)

Offline

#4 2018-01-13 15:52:24

desperat
Member
Registered: 2010-01-04
Posts: 6

Re: USBIP Error can't open vhci-hcd driver even after modprobe vhci-hcd

4.14.13-1-ARCH
Still the issue.

but if you in a rush:

install LTS kernel:
4.9.76-1-lts

and install downgrade
and downgrade to: usbip-4.10-1
downgrade usbip

don't forget:
sudo modprobe vhci_hcd

and lastly:
sudo usbip --debug list --remote="192.168.x.x"
sudo usbip --debug attach --remote="192.168.x.x" --busid="x-y.z"

to detach:
sudo usbip port
choose port xx from list and
sudo usbip detach --port=xx

LTS and downgrade sometimes save my life.
It's easier than compile usbip from source and patch everything from scratch what's an option as well.

Last edited by desperat (2018-01-13 20:41:03)


KDE, Antergos
Thinkpad T410, i5 moded watercooling // LEDE WDR3600 / LTE watercooling

Offline

#5 2018-11-26 16:48:28

MilanKnizek
Member
Registered: 2005-12-13
Posts: 88

Re: USBIP Error can't open vhci-hcd driver even after modprobe vhci-hcd

4.14 has become lts in the meantime and it is still an issue for 4.14.82 (linux-tools, which include usbip, are already v 4.19).

There is a bug report upstream with a patch :
https://bugzilla.kernel.org/show_bug.cgi?id=197607

Or simple commenting out of two lines worked for me:
https://bugs.archlinux.org/task/56069#comment163073

Recompiling patched linux-tools 4.14 against lts eventually produces a working usbip.

P.S. I guess this does not count as necro-bumping :-)


--
Milan Knizek
http://knizek.net

Offline

#6 2018-11-26 19:16:12

loqs
Member
Registered: 2014-03-06
Posts: 17,196

Re: USBIP Error can't open vhci-hcd driver even after modprobe vhci-hcd

Offline

#7 2018-11-27 19:30:00

MilanKnizek
Member
Registered: 2005-12-13
Posts: 88

Re: USBIP Error can't open vhci-hcd driver even after modprobe vhci-hcd

Not sure. The bug I experienced was because the path is ".../vhci_hcd.0/status", while the 'usbip attach' command may fail due to lookup of a ".../vhci_hcd.0/status.0"

Commenting out the condition on line 118:

static int refresh_imported_device_list(void)                                                                           
{                                                                                                                       
<------>const char *attr_status;                                                                                        
<------>char status[MAX_STATUS_NAME+1] = "status";                                                                      
<------>int i, ret;                                                                                                     
                                                                                                                        
<------>for (i = 0; i < vhci_driver->ncontrollers; i++) {                                                               
// MK: the file name is vhci_hcd.0/status, not vhci_hcd.0/status.0                                                      
//<----><------>if (i > 0)                                                                                              
//<----><------><------>snprintf(status, sizeof(status), "status.%d", i);

This ugly workaround is certainly not a solution - but then again, I am not a coder :-( and it "works for me".


--
Milan Knizek
http://knizek.net

Offline

Board footer

Powered by FluxBB