vfio/container: Change VFIOContainerBase to use QOM
commit504d297e10fdfe1b1243274e334abb0074ee69f4
authorCédric Le Goater <clg@redhat.com>
Mon, 17 Jun 2024 06:34:03 +0000 (17 08:34 +0200)
committerCédric Le Goater <clg@redhat.com>
Mon, 24 Jun 2024 21:15:31 +0000 (24 23:15 +0200)
tree8945e18123d6830160957e1afc6b0ff01157c769
parent9550fdfd29f52d548d99aed2b1a002308ad6175a
vfio/container: Change VFIOContainerBase to use QOM

VFIOContainerBase was made a QOM interface because we believed that a
QOM object would expose all the IOMMU backends to the QEMU machine and
human interface. This only applies to user creatable devices or objects.

Change the VFIOContainerBase nature from interface to object and make
the necessary adjustments in the VFIO_IOMMU hierarchy.

Reviewed-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Tested-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
hw/vfio/container-base.c
hw/vfio/container.c
hw/vfio/iommufd.c
hw/vfio/spapr.c
include/hw/vfio/vfio-common.h
include/hw/vfio/vfio-container-base.h