Re: [Call For Test] Single USB device passthrough for Bhyve

From: Shawn Webb <shawn.webb_at_hardenedbsd.org>
Date: Tue, 26 Aug 2025 16:39:58 UTC
On Wed, Aug 27, 2025 at 12:36:12AM +0800, ShengYi Hung wrote:
> 
> Hello all:
> 
> 
> I am currently working on implementing single USB device passthrough for
> bhyve.
> 
> The patch is over here: https://reviews.freebsd.org/D52166
> 
> At this stage, all four types of transfers are supported: control, bulk, interrupt,
> and isochronous. I have verified functionality with a few devices, but broader
> testing is definitely needed to ensure stability and
> compatibility. The isochornous xfer remain untested since it is
> a little bit hard for me to setup uvc test in guest.
> 
> In addition, device hotplug is supported. This means that once the guest is
> running, you can physically remove a device and reattach it without
> requiring a restart.
> 
> To build this feature, please apply all parent patches listed on
> Phabricator and rebuild kernel, libusb, and usbconfig.
> 
> To test passthrough, append the following argument in your bhyve
> config, -s 30,xhci,passthru.vid.pid
> Here, vid and pid are the hexadecimal value of the vendor id
> and product id of the target device. You can obtain these values with:
> usbconfig dump_all_desc.
> 
> I would greatly appreciate it if more people could test this feature and
> provide feedback. Thanks!

Thanks for working on this! If I have multiple of the same device
connected (two Yubikeys for example), would this pass through both
devices or just one? If just one, which would it be?

Thanks,

-- 
Shawn Webb
Cofounder / Security Engineer
HardenedBSD

Signal Username:  shawn_webb.74
Tor-ified Signal: +1 303-901-1600 / shawn_webb_opsec.50
https://git.hardenedbsd.org/hardenedbsd/pubkeys/-/raw/master/Shawn_Webb/03A4CBEBB82EA5A67D9F3853FF2E67A277F8E1FA.pub.asc