-
Feature Request
-
Resolution: Unresolved
-
Normal
-
None
-
False
-
False
-
Today in Nova (and Cyborg) if we have a host device with 2 subfunctions (a classic example of this is a GPU with a separate PCI function for an audio controller, or an FPGA where one function is used to program the device and a second is use to consume it) Nova can't model a multi-function device as a multi-function device when passing it through.
In other words 0000:02.1 and 0000:02.2 become two different devices in the guest not one with a primary function at .1 and a second PCI device at .2.
In Linux that almost never matters because the drivers will just work but on Windows it does in fact break things
The Graphcore C200 which is the example used in PCI passthrough groups spec is actually such a device although the multi function aspect was left out of that spec for simplicity. The feature described in the spec was not implemented yet at all.
We need to gather requirements for this matter and eventually implement the feature. One of the questions we need to resolve is if there is enough of a need to build native support for this or is consulting/docs enough.