vfio/pci: Introduce a vfio pci hot reset interface
Legacy vfio pci and iommufd cdev have different process to hot reset vfio device, expand current code to abstract out pci_hot_reset callback for legacy vfio, this same interface will also be used by iommufd cdev vfio device. Rename vfio_pci_hot_reset to vfio_legacy_pci_hot_reset and move it into container.c. vfio_pci_[pre/post]_reset and vfio_pci_host_match are exported so they could be called in legacy and iommufd pci_hot_reset callback. Suggested-by: Cédric Le Goater <clg@redhat.com> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Tested-by: Eric Auger <eric.auger@redhat.com> Tested-by: Nicolin Chen <nicolinc@nvidia.com> Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
parent
4d36ec23a7
commit
c328e7e8ad
4 changed files with 182 additions and 162 deletions
|
|
@ -106,6 +106,9 @@ struct VFIOIOMMUOps {
|
|||
int (*set_dirty_page_tracking)(VFIOContainerBase *bcontainer, bool start);
|
||||
int (*query_dirty_bitmap)(VFIOContainerBase *bcontainer, VFIOBitmap *vbmap,
|
||||
hwaddr iova, hwaddr size);
|
||||
/* PCI specific */
|
||||
int (*pci_hot_reset)(VFIODevice *vbasedev, bool single);
|
||||
|
||||
/* SPAPR specific */
|
||||
int (*add_window)(VFIOContainerBase *bcontainer,
|
||||
MemoryRegionSection *section,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue