qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [PATCH v6 8/9] vfio/migration: Don't block migration device dirty tr


From: Duan, Zhenzhong
Subject: RE: [PATCH v6 8/9] vfio/migration: Don't block migration device dirty tracking is unsupported
Date: Tue, 23 Jul 2024 04:45:25 +0000


>-----Original Message-----
>From: Joao Martins <joao.m.martins@oracle.com>
>Subject: [PATCH v6 8/9] vfio/migration: Don't block migration device dirty
>tracking is unsupported
>
>By default VFIO migration is set to auto, which will support live
>migration if the migration capability is set *and* also dirty page
>tracking is supported.
>
>For testing purposes one can force enable without dirty page tracking
>via enable-migration=on, but that option is generally left for testing
>purposes.
>
>So starting with IOMMU dirty tracking it can use to accomodate the lack of
>VF dirty page tracking allowing us to minimize the VF requirements for
>migration and thus enabling migration by default for those too.
>
>While at it change the error messages to mention IOMMU dirty tracking as
>well.
>
>Signed-off-by: Joao Martins <joao.m.martins@oracle.com>

Reviewed-by: Zhenzhong Duan <zhenzhong.duan@intel.com>

Thanks
Zhenzhong

>---
> hw/vfio/migration.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
>diff --git a/hw/vfio/migration.c b/hw/vfio/migration.c
>index 34d4be2ce1b1..cbfaef7afffe 100644
>--- a/hw/vfio/migration.c
>+++ b/hw/vfio/migration.c
>@@ -1036,16 +1036,16 @@ bool vfio_migration_realize(VFIODevice
>*vbasedev, Error **errp)
>         return !vfio_block_migration(vbasedev, err, errp);
>     }
>
>-    if (!vbasedev->dirty_pages_supported) {
>+    if (!vbasedev->dirty_pages_supported && !vbasedev-
>>iommu_dirty_tracking) {
>         if (vbasedev->enable_migration == ON_OFF_AUTO_AUTO) {
>             error_setg(&err,
>-                       "%s: VFIO device doesn't support device dirty 
>tracking",
>-                       vbasedev->name);
>+                       "%s: VFIO device doesn't support device and "
>+                       "IOMMU dirty tracking", vbasedev->name);
>             goto add_blocker;
>         }
>
>-        warn_report("%s: VFIO device doesn't support device dirty tracking",
>-                    vbasedev->name);
>+        warn_report("%s: VFIO device doesn't support device and "
>+                    "IOMMU dirty tracking", vbasedev->name);
>     }
>
>     ret = vfio_block_multiple_devices_migration(vbasedev, errp);
>--
>2.17.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]