Re: [PATCH V1 20/26] vfio/iommufd: export iommufd_cdev_get_info_iova_range

2025-02-05 Thread Steven Sistare

On 2/5/2025 12:33 PM, Cédric Le Goater wrote:

On 1/29/25 15:43, Steve Sistare wrote:

Export iommufd_cdev_get_info_iova_range for use by CPR.


why does CPR need access to the IOVA ranges ?


This is explained in the commit message of a subsequent patch,
"vfio/iommufd: reconstruct device"

- Steve


No functional change.

Signed-off-by: Steve Sistare 
---
  hw/vfio/iommufd.c | 4 ++--
  include/hw/vfio/vfio-common.h | 2 ++
  2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/hw/vfio/iommufd.c b/hw/vfio/iommufd.c
index a3e7edb..2f888e5 100644
--- a/hw/vfio/iommufd.c
+++ b/hw/vfio/iommufd.c
@@ -442,8 +442,8 @@ static int iommufd_cdev_ram_block_discard_disable(bool 
state)
  return ram_block_uncoordinated_discard_disable(state);
  }
-static bool iommufd_cdev_get_info_iova_range(VFIOIOMMUFDContainer *container,
- uint32_t ioas_id, Error **errp)
+bool iommufd_cdev_get_info_iova_range(VFIOIOMMUFDContainer *container,
+  uint32_t ioas_id, Error **errp)
  {
  VFIOContainerBase *bcontainer = &container->bcontainer;
  g_autofree struct iommu_ioas_iova_ranges *info = NULL;
diff --git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h
index 5a89aca..ca10abc 100644
--- a/include/hw/vfio/vfio-common.h
+++ b/include/hw/vfio/vfio-common.h
@@ -268,6 +268,8 @@ bool vfio_cpr_register_container(VFIOContainerBase 
*bcontainer, Error **errp);
  void vfio_cpr_unregister_container(VFIOContainerBase *bcontainer);
  bool vfio_legacy_cpr_register_container(VFIOContainer *container, Error 
**errp);
  void vfio_legacy_cpr_unregister_container(VFIOContainer *container);
+bool iommufd_cdev_get_info_iova_range(VFIOIOMMUFDContainer *container,
+  uint32_t ioas_id, Error **errp);
  extern const MemoryRegionOps vfio_region_ops;
  typedef QLIST_HEAD(VFIOGroupList, VFIOGroup) VFIOGroupList;







Re: [PATCH V1 20/26] vfio/iommufd: export iommufd_cdev_get_info_iova_range

2025-02-05 Thread Cédric Le Goater

On 1/29/25 15:43, Steve Sistare wrote:

Export iommufd_cdev_get_info_iova_range for use by CPR.


why does CPR need access to the IOVA ranges ?


Thanks,

C.




No functional change.

Signed-off-by: Steve Sistare 
---
  hw/vfio/iommufd.c | 4 ++--
  include/hw/vfio/vfio-common.h | 2 ++
  2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/hw/vfio/iommufd.c b/hw/vfio/iommufd.c
index a3e7edb..2f888e5 100644
--- a/hw/vfio/iommufd.c
+++ b/hw/vfio/iommufd.c
@@ -442,8 +442,8 @@ static int iommufd_cdev_ram_block_discard_disable(bool 
state)
  return ram_block_uncoordinated_discard_disable(state);
  }
  
-static bool iommufd_cdev_get_info_iova_range(VFIOIOMMUFDContainer *container,

- uint32_t ioas_id, Error **errp)
+bool iommufd_cdev_get_info_iova_range(VFIOIOMMUFDContainer *container,
+  uint32_t ioas_id, Error **errp)
  {
  VFIOContainerBase *bcontainer = &container->bcontainer;
  g_autofree struct iommu_ioas_iova_ranges *info = NULL;
diff --git a/include/hw/vfio/vfio-common.h b/include/hw/vfio/vfio-common.h
index 5a89aca..ca10abc 100644
--- a/include/hw/vfio/vfio-common.h
+++ b/include/hw/vfio/vfio-common.h
@@ -268,6 +268,8 @@ bool vfio_cpr_register_container(VFIOContainerBase 
*bcontainer, Error **errp);
  void vfio_cpr_unregister_container(VFIOContainerBase *bcontainer);
  bool vfio_legacy_cpr_register_container(VFIOContainer *container, Error 
**errp);
  void vfio_legacy_cpr_unregister_container(VFIOContainer *container);
+bool iommufd_cdev_get_info_iova_range(VFIOIOMMUFDContainer *container,
+  uint32_t ioas_id, Error **errp);
  
  extern const MemoryRegionOps vfio_region_ops;

  typedef QLIST_HEAD(VFIOGroupList, VFIOGroup) VFIOGroupList;