[Feature Request] Install kernel module vhci-hcd


jk2587

Recommended Posts

Hi @limetech

 

I'd like to be able to use the usbip client inside a docker container, and for that I believe the vhci-hcd kernel module needs to exist on the host. Here is the message I received when trying to run modprobe vhci-hcd in a container (homeassistant):

 

modprobe vhci-hcd
modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.18.20-unRAID/modules.dep.bin'
modprobe: FATAL: Module vhci-hcd not found in directory /lib/modules/4.18.20-unRAID

 

And when trying to run it on the host:

 

modprobe vhci-hcd
modprobe: FATAL: Module vhci-hcd not found in directory /lib/modules/4.18.20-unRAID

 

Thanks for your help!

Joel

Link to comment
  • 1 month later...

I'm running into the same issue, and trying to find workarounds without having to build a custom kernel.  It's supposedly supposed to be built into the linux kernel by now, with binaries provided for different distros.

 

Trying to use usbip/VirtualHere to share a USB device on another machine with a docker container.  Here are some VirtualHere (basic) instructions to obtain vhci_hcd.ko and usbip-common.ko: https://www.virtualhere.com/client_configuration_faq

Link to comment
  • 8 months later...
  • 10 months later...
  • 5 weeks later...
4 hours ago, itimpi said:

I wonder if the new feature in 6.9 beta 35 to allow extra modules to be loaded will allow users to add this module?

Actually I just compiled the required modules, so eventually there will be somebody doing this job and sharing them with the community.

I'm on the stable though... Looks like the modules are stored in the bzmodules file in the flash that is also hashed. If somebody can confirm that modifying the bzmodules file and re-hashing it will work, I can give it a try.

 

EDIT: I gave it a try, it worked.

Edited by cyruz
Link to comment
  • 2 weeks later...
  • 3 weeks later...

I have started to create a plugin for the binaries usbip + usbipd and associated libraries.

 

Plugin is available on CA 

 

I have been able to connect to a usbip host running on a pi-zerow

 

Currently only tested on 6.9.0-rc2 client function.  I cannot test the server side as usbip-host kernel module is not in the build would need to be added.

 

root@Tower:/mnt/disks/CBM_Flash_Disk# usbip list -r 192.168.1.11
Exportable USB devices
======================
 - 192.168.1.11
        1-1: Chipsbank Microelectronics Co., Ltd : CBM2080 / CBM2090 Flash drive controller (0204:6025)
           : /sys/devices/platform/soc/20980000.usb/usb1/1-1
           : (Defined at Interface level) (00/00/00)
           :  0 - Mass Storage / SCSI / Bulk-Only (08/06/50)

root@Tower:/mnt/disks/CBM_Flash_Disk# lsusb | grep CBM
Bus 005 Device 002: ID 0204:6025 Chipsbank Microelectronics Co., Ltd CBM2080 / CBM2090 Flash drive controller
root@Tower:/mnt/disks/CBM_Flash_Disk# usbip port
Imported USB devices
====================
Port 00: <Port in Use> at High Speed(480Mbps)
       Chipsbank Microelectronics Co., Ltd : CBM2080 / CBM2090 Flash drive controller (0204:6025)
       5-1 -> usbip://192.168.1.11:3240/1-1
           -> remote bus/dev 001/002
root@Tower:/mnt/disks/CBM_Flash_Disk# 
 

 

Edited by SimonF
  • Like 1
Link to comment
  • 4 weeks later...

@limetech Would it be possible to include usbip_host aswell as vhci_hcd and usbip_core.

 

I have a compiled version of the usbip_host module to use for testing and it works fine. This is only required if you want to mount USB devices from unraid to another device(Top part in gui).

 

Is anyone using USBIP as I am starting to create a plugin to provide an interface. Based on unassigned devices. Are there any specific requirements people are looking for?

 

Already I have disabled the unraid flash from having an option to mount from the gui, and plan to disable USB devices if already in use i.e. in UD etc.

 

This is how it is looking so far.

 

image.thumb.png.e491cf12153ce30fe671a089235ae9b6.png

 

 

  • Like 3
Link to comment
  • 2 weeks later...

I have created two plugings for USBIP.

 

1) First one will install just usbip and usbipd.

2) Provides a GUI for USBIP.

 

Both are in CA just search for USBIP. The GUI needs to have both installed as the commands are not included with the GUI..

 

You will find that some of the buttons will be disabled if the necessary modules are not loaded or commands are not found. At present it is still classed as Beta.

 

Please feel free to try it out and leave feedback, additional feature requests on this support link. 

 

The usbip-host kernel module is not included within 6.9.0-rc2 but I can supply a version if required but it is Kernel specific, and will only work on 6.9.0-rc2. PM me about the module if you want to try it out.

 

USBIPD can be started whilst the array is not working, but I have made the events shutdown usbipd when the system is stopped.

 

Link to comment
1 hour ago, SimonF said:

The usbip-host kernel module is not included within 6.9.0-rc2 but I can supply a version if required but it is Kernel specific, and will only work on 6.9.0-rc2. PM me about the module if you want to try it out.

Should I create a Plugin with the usbip-host executable and also the module all in one Plugin and update it if a new version of Unraid is released?

I think this would be more convenient...

Link to comment
1 hour ago, SimonF said:

I have created two plugings for USBIP.

 

1) First one will install just usbip and usbipd.

2) Provides a GUI for USBIP.

 

Both are in CA just search for USBIP. The GUI needs to have both installed as the commands are not included with the GUI..

 

You will find that some of the buttons will be disabled if the necessary modules are not loaded or commands are not found. At present it is still classed as Beta.

 

Please feel free to try it out and leave feedback, additional feature requests on this support link. 

 

The usbip-host kernel module is not included within 6.9.0-rc2 but I can supply a version if required but it is Kernel specific, and will only work on 6.9.0-rc2. PM me about the module if you want to try it out.

 

USBIPD can be started whilst the array is not working, but I have made the events shutdown usbipd when the system is stopped.

 

 

1 minute ago, ich777 said:

Should I create a Plugin with the usbip-host executable and also the module all in one Plugin and update it if a new version of Unraid is released?

I think this would be more convenient...

 

Just posted on your other thread... this module should have been integrated into your plugin.....

Link to comment
2 hours ago, giganode said:

 

 

Just posted on your other thread... this module should have been integrated into your plugin.....

I have asked for it to be included in the stock as the other two modules for USBIP are already included.

 

Which other thread? The module is only required if you want to use in host module, necessary modules are already included in rc2 client mode.

Edited by SimonF
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.