Re: [PATCH v3 12/12] vfio/pci: Report dev_id in VFIO_DEVICE_GET_PCI_HOT_RESET_INFO

Jason Gunthorpe
2023-04-12T15:06:06Z

On Wed, Apr 12, 2023 at 07:27:43AM +0000, Tian, Kevin wrote:
> > From: Jason Gunthorpe
> > Sent: Wednesday, April 12, 2023 8:01 AM
> >
> > I see this problem as a few basic requirements from a qemu-like
> > application:
> >
> > 1) Does the configuration I was given support reset right now?
> > 2) Will the configuration I was given support reset for the duration
> > of my execution?
> > 3) What groups of the devices I already have open does the reset
> > effect?
> > 4) For debugging, report to the user the full list of devices in the
> > reset group, in a way that relates back to sysfs.
> > 5) Away to trigger a reset on a group of devices
> >
> > #1/#2 is the API I suggested here. Ask the kernel if the current
> > configuration works, and ask it to keep it working.
> >
> > #3 is either INFO and a CAP for BDF or INFO2 reporting dev_id
> >
> > #4 is either INFO and print the BDFs or INFO2 reporting the struct
> > vfio_device IDR # (eg /sys/class/vfio/vfioXXX/).
>
> mdev doesn't have BDF. Of course it doesn't support hot_reset either.

It should support a reset.. Maybe idxd doesn't, but it should be part
of the SIOV model. Our SIOV devices would need it for instance.

> but it's presented to userspace as a pci device. Is it weird for a pci
> device which doesn't provide a BDF cap?

It is weird for a PCI device, but it is not weird for a VFIO
device. Leaking the physical labels out of the uAPI is not clean,
IMHO.

> from this point the vfio_device IDR# sounds more generic.

Yes, I was thinking about this for the SIOV model.

Jason