[PATCH v4 10/14] vfio/pci: Reorganize VFIO_DEVICE_PCI_HOT_RESET to use the device set

Cornelia Huck cohuck at redhat.com
Wed Aug 11 10:33:01 UTC 2021


On Thu, Aug 05 2021, Jason Gunthorpe <jgg at nvidia.com> wrote:

> Like vfio_pci_dev_set_try_reset() this code wants to reset all of the
> devices in the "reset group" which is the same membership as the device
> set.
>
> Instead of trying to reconstruct the device set from the PCI list go
> directly from the device set's device list to execute the reset.
>
> The same basic structure as vfio_pci_dev_set_try_reset() is used. The
> 'vfio_devices' struct is replaced with the device set linked list and we
> simply sweep it multiple times under the lock.
>
> This eliminates a memory allocation and get/put traffic and another
> improperly locked test of pci_dev_driver().
>
> Reviewed-off-by: Christoph Hellwig <hch at lst.de>
> Signed-off-by: Jason Gunthorpe <jgg at nvidia.com>
> ---
>  drivers/vfio/pci/vfio_pci.c | 213 +++++++++++++++---------------------
>  1 file changed, 89 insertions(+), 124 deletions(-)

Reviewed-by: Cornelia Huck <cohuck at redhat.com>



More information about the dri-devel mailing list