mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
vfio/iommufd: Introduce a VFIOIOMMU iommufd QOM interface
As previously done for the sPAPR and legacy IOMMU backends, convert the VFIOIOMMUOps struct to a QOM interface. The set of of operations for this backend can be referenced with a literal typename instead of a C struct. Reviewed-by: Zhenzhong Duan <zhenzhong.duan@intel.com> Tested-by: Eric Farman <farman@linux.ibm.com> Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
parent
f221f641a2
commit
ce5f6d49f5
4 changed files with 28 additions and 12 deletions
|
@ -210,7 +210,6 @@ typedef QLIST_HEAD(VFIOGroupList, VFIOGroup) VFIOGroupList;
|
|||
typedef QLIST_HEAD(VFIODeviceList, VFIODevice) VFIODeviceList;
|
||||
extern VFIOGroupList vfio_group_list;
|
||||
extern VFIODeviceList vfio_device_list;
|
||||
extern const VFIOIOMMUOps vfio_iommufd_ops;
|
||||
extern const MemoryListener vfio_memory_listener;
|
||||
extern int vfio_kvm_device_fd;
|
||||
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
|
||||
typedef struct VFIODevice VFIODevice;
|
||||
typedef struct VFIOIOMMUClass VFIOIOMMUClass;
|
||||
#define VFIOIOMMUOps VFIOIOMMUClass /* To remove */
|
||||
|
||||
typedef struct {
|
||||
unsigned long *bitmap;
|
||||
|
@ -96,6 +95,7 @@ void vfio_container_destroy(VFIOContainerBase *bcontainer);
|
|||
#define TYPE_VFIO_IOMMU "vfio-iommu"
|
||||
#define TYPE_VFIO_IOMMU_LEGACY TYPE_VFIO_IOMMU "-legacy"
|
||||
#define TYPE_VFIO_IOMMU_SPAPR TYPE_VFIO_IOMMU "-spapr"
|
||||
#define TYPE_VFIO_IOMMU_IOMMUFD TYPE_VFIO_IOMMU "-iommufd"
|
||||
|
||||
/*
|
||||
* VFIOContainerBase is not an abstract QOM object because it felt
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue