Re: [PATCH v2 1/2] rust: pci: skip probing VFs if driver doesn't support VFs

Danilo Krummrich
2025-10-02T16:05:35Z

On Thu Oct 2, 2025 at 5:23 PM CEST, Jason Gunthorpe wrote:
> This is not what I've been told, the VF driver has significant
> programming model differences in the NVIDIA model, and supports
> different commands.

Ok, that means there are some more fundamental differences between the host PF
and the "VM PF" code that we have to deal with.

But that doesn't necessarily require that the VF parts of the host have to be in
nova-core as well, i.e. with the information we have we can differentiate
between PF, VF and PF in the VM (indicated by a device register).

> If you look at the VFIO driver RFC it basically does no mediation, it
> isn't intercepting MMIO - the guest sees the BARs directly. Most of
> the code is "profiling" from what I can tell. Some config space
> meddling.

Sure, there is no mediation in that sense, but it needs quite some setup
regardless, no?

I thought there is a significant amount of semantics that is different between
booting the PF and the VF on the host.

Also, the idea was to use a layered approach, i.e. let nova-core serve as an
abstraction layer, where the DRM and VFIO parts can be layered on top of.

Are you suggesting to merge vGPU into nova-core?

(The VF specific firmware interfaces, should be abstracted in nova-core, so,
technically, we will have some vGPU specific code in nova-core.)