[libvirt] [PATCH] qemu: Do not require hostuuid in migration cookie

Michal Privoznik mprivozn at redhat.com
Fri Oct 19 14:53:38 UTC 2012


On 19.10.2012 16:31, Jiri Denemark wrote:
> Having hostuuid in migration cookie is a nice bonus since it provides an
> easy way of detecting migration to the same host. However, requiring it
> breaks backward compatibility with older libvirt releases.
> ---
>  src/qemu/qemu_migration.c | 31 ++++++++++++++++---------------
>  1 file changed, 16 insertions(+), 15 deletions(-)
> 
> diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
> index a2402ce..487182e 100644
> --- a/src/qemu/qemu_migration.c
> +++ b/src/qemu/qemu_migration.c
> @@ -576,22 +576,23 @@ qemuMigrationCookieXMLParse(qemuMigrationCookiePtr mig,
>      }
>  
>      if (!(tmp = virXPathString("string(./hostuuid[1])", ctxt))) {
> -        virReportError(VIR_ERR_INTERNAL_ERROR,
> -                       "%s", _("missing hostuuid element in migration data"));
> -        goto error;
> -    }
> -    if (virUUIDParse(tmp, mig->remoteHostuuid) < 0) {
> -        virReportError(VIR_ERR_INTERNAL_ERROR,
> -                       "%s", _("malformed hostuuid element in migration data"));
> -        goto error;
> -    }
> -    if (memcmp(mig->remoteHostuuid, mig->localHostuuid, VIR_UUID_BUFLEN) == 0) {
> -        virReportError(VIR_ERR_INTERNAL_ERROR,
> -                       _("Attempt to migrate guest to the same host %s"),
> -                       tmp);
> -        goto error;
> +        VIR_WARN("Missing hostuuid element in migration data; cannot "
> +                 "detect migration to the same host");
> +    } else {
> +        if (virUUIDParse(tmp, mig->remoteHostuuid) < 0) {
> +            virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
> +                           _("malformed hostuuid element in migration data"));
> +            goto error;
> +        }
> +        if (memcmp(mig->remoteHostuuid, mig->localHostuuid,
> +                   VIR_UUID_BUFLEN) == 0) {
> +            virReportError(VIR_ERR_INTERNAL_ERROR,
> +                           _("Attempt to migrate guest to the same host %s"),
> +                           tmp);
> +            goto error;
> +        }
> +        VIR_FREE(tmp);
>      }
> -    VIR_FREE(tmp);
>  
>      /* Check to ensure all mandatory features from XML are also
>       * present in 'flags' */
> 

ACK

Michal




More information about the libvir-list mailing list