[libvirt PATCH 33/80] qemu: Introduce qemuMigrationDstFinishOffline

Peter Krempa pkrempa at redhat.com
Wed May 11 14:53:48 UTC 2022


On Tue, May 10, 2022 at 17:20:54 +0200, Jiri Denemark wrote:
> Refactors qemuMigrationDstFinish by moving some parts to a dedicated
> function for easier introduction of postcopy resume code without
> duplicating common parts of the Finish phase. The goal is to have the
> following call graph:
> 
>     - qemuMigrationDstFinish
>         - qemuMigrationDstFinishOffline
>         - qemuMigrationDstFinishActive
>             - qemuMigrationDstFinishFresh
>             - qemuMigrationDstFinishResume
> 
> Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
> ---
>  src/qemu/qemu_migration.c | 39 +++++++++++++++++++++++++++++----------
>  1 file changed, 29 insertions(+), 10 deletions(-)
> 
> diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
> index 385bd91a6b..dcd7ff3597 100644
> --- a/src/qemu/qemu_migration.c
> +++ b/src/qemu/qemu_migration.c
> @@ -5839,6 +5839,32 @@ qemuMigrationDstComplete(virQEMUDriver *driver,
>  }
>  
>  
> +static virDomainPtr
> +qemuMigrationDstFinishOffline(virQEMUDriver *driver,
> +                              virConnectPtr dconn,
> +                              virDomainObj *vm,
> +                              qemuMigrationCookie *mig,
> +                              char **cookieout,
> +                              int *cookieoutlen)
> +{
> +    virDomainPtr dom = NULL;
> +
> +    if (qemuMigrationDstPersist(driver, vm, mig, false) < 0)
> +        return NULL;
> +
> +    dom = virGetDomain(dconn, vm->def->name, vm->def->uuid, -1);
> +
> +    if (dom &&

Earlier I've commented about uselessness of this check. Other code
formats the cookie unconditionally.

> +        qemuMigrationCookieFormat(mig, driver, vm,
> +                                  QEMU_MIGRATION_DESTINATION,
> +                                  cookieout, cookieoutlen,
> +                                  QEMU_MIGRATION_COOKIE_STATS) < 0)
> +        VIR_WARN("Unable to encode migration cookie");
> +
> +    return dom;
> +}


Reviewed-by: Peter Krempa <pkrempa at redhat.com>


More information about the libvir-list mailing list