[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [RFC v2 1/7] HostIOMMUDevice: Store the VFIO/VDPA agent
From: |
Duan, Zhenzhong |
Subject: |
RE: [RFC v2 1/7] HostIOMMUDevice: Store the VFIO/VDPA agent |
Date: |
Tue, 11 Jun 2024 03:22:40 +0000 |
>-----Original Message-----
>From: Eric Auger <eric.auger@redhat.com>
>Subject: [RFC v2 1/7] HostIOMMUDevice: Store the VFIO/VDPA agent
>
>Store the agent device (VFIO or VDPA) in the host IOMMU device.
>This will allow easy access to some of its resources.
>
>Signed-off-by: Eric Auger <eric.auger@redhat.com>
>---
Reviewed-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Thanks
Zhenzhong
> include/sysemu/host_iommu_device.h | 1 +
> hw/vfio/container.c | 1 +
> hw/vfio/iommufd.c | 2 ++
> 3 files changed, 4 insertions(+)
>
>diff --git a/include/sysemu/host_iommu_device.h
>b/include/sysemu/host_iommu_device.h
>index a57873958b..3e5f058e7b 100644
>--- a/include/sysemu/host_iommu_device.h
>+++ b/include/sysemu/host_iommu_device.h
>@@ -34,6 +34,7 @@ struct HostIOMMUDevice {
> Object parent_obj;
>
> char *name;
>+ void *agent; /* pointer to agent device, ie. VFIO or VDPA device */
> HostIOMMUDeviceCaps caps;
> };
>
>diff --git a/hw/vfio/container.c b/hw/vfio/container.c
>index 26e6f7fb4f..b728b978a2 100644
>--- a/hw/vfio/container.c
>+++ b/hw/vfio/container.c
>@@ -1145,6 +1145,7 @@ static bool
>hiod_legacy_vfio_realize(HostIOMMUDevice *hiod, void *opaque,
>
> hiod->name = g_strdup(vdev->name);
> hiod->caps.aw_bits = vfio_device_get_aw_bits(vdev);
>+ hiod->agent = opaque;
>
> return true;
> }
>diff --git a/hw/vfio/iommufd.c b/hw/vfio/iommufd.c
>index 409ed3dcc9..dbdae1adbb 100644
>--- a/hw/vfio/iommufd.c
>+++ b/hw/vfio/iommufd.c
>@@ -631,6 +631,8 @@ static bool
>hiod_iommufd_vfio_realize(HostIOMMUDevice *hiod, void *opaque,
> struct iommu_hw_info_vtd vtd;
> } data;
>
>+ hiod->agent = opaque;
>+
> if (!iommufd_backend_get_device_info(vdev->iommufd, vdev->devid,
> &type, &data, sizeof(data), errp)) {
> return false;
>--
>2.41.0
- [RFC v2 0/7] VIRTIO-IOMMU/VFIO: Fix host iommu geometry handling for hotplugged devices, Eric Auger, 2024/06/07
- [RFC v2 1/7] HostIOMMUDevice: Store the VFIO/VDPA agent, Eric Auger, 2024/06/07
- RE: [RFC v2 1/7] HostIOMMUDevice: Store the VFIO/VDPA agent,
Duan, Zhenzhong <=
- [RFC v2 2/7] virtio-iommu: Implement set|unset]_iommu_device() callbacks, Eric Auger, 2024/06/07
- [RFC v2 3/7] HostIOMMUDevice: Introduce get_iova_ranges callback, Eric Auger, 2024/06/07
- [RFC v2 4/7] virtio-iommu: Compute host reserved regions, Eric Auger, 2024/06/07