forked from rpms/qemu-kvm
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
2.1 KiB
56 lines
2.1 KiB
9 months ago
|
From 29f13011e62f5370ef7fb3248dc85c90ae5bb042 Mon Sep 17 00:00:00 2001
|
||
|
From: =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@redhat.com>
|
||
|
Date: Tue, 19 Dec 2023 07:58:21 +0100
|
||
|
Subject: [PATCH 054/101] vfio/container: Intoduce a new VFIOIOMMUClass::setup
|
||
|
handler
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
|
||
|
RH-Author: Eric Auger <eric.auger@redhat.com>
|
||
|
RH-MergeRequest: 211: IOMMUFD backend backport
|
||
|
RH-Jira: RHEL-19302 RHEL-21057
|
||
|
RH-Acked-by: Cédric Le Goater <clg@redhat.com>
|
||
|
RH-Acked-by: Sebastian Ott <sebott@redhat.com>
|
||
|
RH-Commit: [53/67] 8641161afc33d68795bcf51a47e89061b34d50a8 (eauger1/centos-qemu-kvm)
|
||
|
|
||
|
This will help in converting the sPAPR IOMMU backend to a QOM interface.
|
||
|
|
||
|
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>
|
||
|
(cherry picked from commit 61d893f2cdb34a2b0255f9b5fbba6b49b94ff730)
|
||
|
Signed-off-by: Eric Auger <eric.auger@redhat.com>
|
||
|
---
|
||
|
hw/vfio/container.c | 1 +
|
||
|
include/hw/vfio/vfio-container-base.h | 1 +
|
||
|
2 files changed, 2 insertions(+)
|
||
|
|
||
|
diff --git a/hw/vfio/container.c b/hw/vfio/container.c
|
||
|
index 220e838a91..c22bdd3216 100644
|
||
|
--- a/hw/vfio/container.c
|
||
|
+++ b/hw/vfio/container.c
|
||
|
@@ -1129,6 +1129,7 @@ static void vfio_iommu_legacy_class_init(ObjectClass *klass, void *data)
|
||
|
{
|
||
|
VFIOIOMMUClass *vioc = VFIO_IOMMU_CLASS(klass);
|
||
|
|
||
|
+ vioc->setup = vfio_legacy_setup;
|
||
|
vioc->dma_map = vfio_legacy_dma_map;
|
||
|
vioc->dma_unmap = vfio_legacy_dma_unmap;
|
||
|
vioc->attach_device = vfio_legacy_attach_device;
|
||
|
diff --git a/include/hw/vfio/vfio-container-base.h b/include/hw/vfio/vfio-container-base.h
|
||
|
index c60370fc5e..ce8b1fba88 100644
|
||
|
--- a/include/hw/vfio/vfio-container-base.h
|
||
|
+++ b/include/hw/vfio/vfio-container-base.h
|
||
|
@@ -109,6 +109,7 @@ struct VFIOIOMMUClass {
|
||
|
InterfaceClass parent_class;
|
||
|
|
||
|
/* basic feature */
|
||
|
+ int (*setup)(VFIOContainerBase *bcontainer, Error **errp);
|
||
|
int (*dma_map)(const VFIOContainerBase *bcontainer,
|
||
|
hwaddr iova, ram_addr_t size,
|
||
|
void *vaddr, bool readonly);
|
||
|
--
|
||
|
2.39.3
|
||
|
|