[libvirt PATCH v2 67/81] qemu: Implement VIR_MIGRATE_POSTCOPY_RESUME for Finish phase

Jiri Denemark jdenemar at redhat.com
Fri Jun 3 12:29:58 UTC 2022


On Wed, Jun 01, 2022 at 14:50:07 +0200, Jiri Denemark wrote:
> Everything was already done in the normal Finish phase and vCPUs are
> running. We just need to wait for all remaining data to be transferred.
> 
> Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
> Reviewed-by: Peter Krempa <pkrempa at redhat.com>
> Reviewed-by: Pavel Hrdina <phrdina at redhat.com>
> ---
> 
> Notes:
>     Version 2:
>     - no change
> 
>  src/qemu/qemu_migration.c | 46 ++++++++++++++++++++++++++++++++++-----
>  1 file changed, 40 insertions(+), 6 deletions(-)

Consider the following diff squashed in, otherwise the domain will be
killed on destination in case a resume attempt fails early.

Jirka

diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
index 644c123702..0d60961f86 100644
--- a/src/qemu/qemu_migration.c
+++ b/src/qemu/qemu_migration.c
@@ -6599,7 +6599,7 @@ qemuMigrationDstFinishActive(virQEMUDriver *driver,
     qemuDomainJobPrivate *jobPriv = priv->job.privateData;
     virObjectEvent *event;
     bool inPostCopy = false;
-    bool doKill = true;
+    bool doKill = priv->job.phase != QEMU_MIGRATION_PHASE_FINISH_RESUME;
     int rc;

     VIR_DEBUG("vm=%p, flags=0x%lx, retcode=%d",


More information about the libvir-list mailing list