]> git.proxmox.com Git - mirror_qemu.git/commit
vfio/container: Introduce a VFIOIOMMU QOM interface
authorCédric Le Goater <clg@redhat.com>
Tue, 19 Dec 2023 06:58:19 +0000 (07:58 +0100)
committerCédric Le Goater <clg@redhat.com>
Fri, 5 Jan 2024 20:25:20 +0000 (21:25 +0100)
commitfdaa774e67435a328c0e28006c4d749f2198294a
tree57847ace36a36aa938474f1c680641a990c611dd
parentbffe92af0e7571868d47a1d1cd2205e13054d492
vfio/container: Introduce a VFIOIOMMU QOM interface

VFIOContainerBase was not introduced as an abstract QOM object because
it felt unnecessary to expose all the IOMMU backends to the QEMU
machine and human interface. However, we can still abstract the IOMMU
backend handlers using a QOM interface class. This provides more
flexibility when referencing the various implementations.

Simply transform the VFIOIOMMUOps struct in an InterfaceClass and do
some initial name replacements. Next changes will start converting
VFIOIOMMUOps.

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>
hw/vfio/common.c
hw/vfio/container-base.c
hw/vfio/pci.c
include/hw/vfio/vfio-container-base.h