diff mbox series

[v1,14/22] vfio/common: Simplify vfio_viommu_preset()

Message ID 20230830103754.36461-15-zhenzhong.duan@intel.com (mailing list archive)
State New, archived
Headers show
Series vfio: Adopt iommufd | expand

Commit Message

Duan, Zhenzhong Aug. 30, 2023, 10:37 a.m. UTC
Commit "vfio/container-base: Introduce [attach/detach]_device container callbacks"
add support to link to address space, we can utilize it to simplify
vfio_viommu_preset().

Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
---
 hw/vfio/common.c | 17 +----------------
 1 file changed, 1 insertion(+), 16 deletions(-)

Comments

Cédric Le Goater Sept. 19, 2023, 4:01 p.m. UTC | #1
On 8/30/23 12:37, Zhenzhong Duan wrote:
> Commit "vfio/container-base: Introduce [attach/detach]_device container callbacks"
> add support to link to address space, we can utilize it to simplify
> vfio_viommu_preset().
> 
> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>

This looks like a revert of patch 07. Can it be avoided in v2 ?

Thanks,

C.

> ---
>   hw/vfio/common.c | 17 +----------------
>   1 file changed, 1 insertion(+), 16 deletions(-)
> 
> diff --git a/hw/vfio/common.c b/hw/vfio/common.c
> index 86b6af5740..6c3e98d5fd 100644
> --- a/hw/vfio/common.c
> +++ b/hw/vfio/common.c
> @@ -165,22 +165,7 @@ void vfio_unblock_multiple_devices_migration(void)
>   
>   bool vfio_viommu_preset(VFIODevice *vbasedev)
>   {
> -    VFIOAddressSpace *space;
> -    VFIOContainer *container;
> -    VFIODevice *tmp_dev;
> -
> -    QLIST_FOREACH(space, &vfio_address_spaces, list) {
> -        QLIST_FOREACH(container, &space->containers, next) {
> -            tmp_dev = NULL;
> -            while ((tmp_dev = vfio_container_dev_iter_next(container,
> -                                                           tmp_dev))) {
> -                if (vbasedev == tmp_dev) {
> -                    return space->as != &address_space_memory;
> -                }
> -            }
> -        }
> -    }
> -    g_assert_not_reached();
> +    return vbasedev->container->space->as != &address_space_memory;
>   }
>   
>   static void vfio_set_migration_error(int err)
Duan, Zhenzhong Sept. 20, 2023, 2:59 a.m. UTC | #2
>-----Original Message-----
>From: Cédric Le Goater <clg@redhat.com>
>Sent: Wednesday, September 20, 2023 12:01 AM
>Subject: Re: [PATCH v1 14/22] vfio/common: Simplify vfio_viommu_preset()
>
>On 8/30/23 12:37, Zhenzhong Duan wrote:
>> Commit "vfio/container-base: Introduce [attach/detach]_device container
>callbacks"
>> add support to link to address space, we can utilize it to simplify
>> vfio_viommu_preset().
>>
>> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
>
>This looks like a revert of patch 07. Can it be avoided in v2 ?

Yes, I will redesign the related part so that I could have this patch dropped.

Thanks
Zhenzhong
diff mbox series

Patch

diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index 86b6af5740..6c3e98d5fd 100644
--- a/hw/vfio/common.c
+++ b/hw/vfio/common.c
@@ -165,22 +165,7 @@  void vfio_unblock_multiple_devices_migration(void)
 
 bool vfio_viommu_preset(VFIODevice *vbasedev)
 {
-    VFIOAddressSpace *space;
-    VFIOContainer *container;
-    VFIODevice *tmp_dev;
-
-    QLIST_FOREACH(space, &vfio_address_spaces, list) {
-        QLIST_FOREACH(container, &space->containers, next) {
-            tmp_dev = NULL;
-            while ((tmp_dev = vfio_container_dev_iter_next(container,
-                                                           tmp_dev))) {
-                if (vbasedev == tmp_dev) {
-                    return space->as != &address_space_memory;
-                }
-            }
-        }
-    }
-    g_assert_not_reached();
+    return vbasedev->container->space->as != &address_space_memory;
 }
 
 static void vfio_set_migration_error(int err)