Return to

USB SR-IOV PCIe expansion card?

Hi all,

New member (long time lurker) here. I’ve been looking into starting with VFIO, and one of the things that comes up again and again is how hard it can be to passthrough USB devices. (I’ve seen many posts on this forum, and the reddit r/VFIO about this).

I was wondering has anyone come across a USB PCIe card that supports SR-IOV, enterprise or consumer? If not, has there been any effort to try and (crowd)source one (I don’t know if this would even be possible, given both USB and SR-IOV are pernickety, complex, high-performance standards and the cost that is likely involved here)?

In addition to really helping with IO on VMs, it might also be useful for other purposes. The one that popped into my head was how you might be able to do software defined KVMs, with something like looking-glass, except where buffer copying occurs between USB memory-mapped regions.

IO virtualisation really does seem to be the last bastion where hardware dictates everything - at least on the consumer side. For storage, networking and compute we have had virtualised (“hyperconvergence”) solutions for quite a while now, its just the IO stuff that seems to be a bit lagging behind IMO.


Assigning the USB device as a pass-through disk isn’t sufficient in some way?

What is the issue you’re trying to resolve? Apologies, I haven’t run into any issues with pass-through using USB devices before.

Apologies, I may have misinterpreted the purpose of this (VFIO) forum tag (if this is intended for support stories only?)

I don’t have a problem really - the USB passthrough I have tried does work (this is not an XY problem incident, at least I dont think :blush:). I have seen problems before like with passing through the entire controller - and thus having to have a separate controller for every VM (there is a post on this forum (Jack’s Hardware: The Ultimate VFIO USB 3.0 Controller - I can’t link because I’m new)).

My intent with the post was genuinely just to ask whether anyone had ever seen an SR-IOV USB card, as I thought it might be a pretty cool thing to look at/try.

Oh, yea, I haven’t but I’ve never looked. Yes, that would be cool!

You’re better off with Thunderbolt daisy chain than a USB to PCI-E solution. If you plan to do this with a Mining riser, keep in mind there’s PLX chips in the 4 to 1 “USB” to PCI-E cards, and it gets squished down to PCI-E Gen 2 x1 bandwidth.

All the USB-C connector external GPU boxes are actually Thunderbolt, not USB.