[libvirt] [PATCH] Fix migration with qemu 1.6

Michal Privoznik mprivozn at redhat.com
Fri Nov 15 08:43:58 UTC 2013


On 15.11.2013 07:52, whitearchey wrote:
> QEMU 1.6.0 introduced new migration status: setup
> Libvirt does not expect such string in QMP and refuses to migrate with
> error
> "unexpected migration status in setup"
> 
> This patch fixes it.
> 
> diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
> index a3d986f..4b5fdba 100644
> --- a/src/qemu/qemu_migration.c
> +++ b/src/qemu/qemu_migration.c
> @@ -1644,6 +1644,10 @@ qemuMigrationUpdateJobStatus(virQEMUDriverPtr
> driver,
>                         _("%s: %s"), job, _("is not active"));
>          break;
> 
> +    case QEMU_MONITOR_MIGRATION_STATUS_SETUP:
> +        ret = 0;
> +        break;
> +
>      case QEMU_MONITOR_MIGRATION_STATUS_ACTIVE:
>          priv->job.info.fileTotal = priv->job.status.disk_total;
>          priv->job.info.fileRemaining = priv->job.status.disk_remaining;
> diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c
> index 30315b3..0d4598e 100644
> --- a/src/qemu/qemu_monitor.c
> +++ b/src/qemu/qemu_monitor.c
> @@ -114,7 +114,7 @@ VIR_ONCE_GLOBAL_INIT(qemuMonitor)
> 
>  VIR_ENUM_IMPL(qemuMonitorMigrationStatus,
>                QEMU_MONITOR_MIGRATION_STATUS_LAST,
> -              "inactive", "active", "completed", "failed", "cancelled")
> +              "inactive", "active", "completed", "failed", "cancelled",
> "setup")
> 
>  VIR_ENUM_IMPL(qemuMonitorMigrationCaps,
>                QEMU_MONITOR_MIGRATION_CAPS_LAST,
> diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h
> index f893b1f..eabf000 100644
> --- a/src/qemu/qemu_monitor.h
> +++ b/src/qemu/qemu_monitor.h
> @@ -397,6 +397,7 @@ enum {
>      QEMU_MONITOR_MIGRATION_STATUS_COMPLETED,
>      QEMU_MONITOR_MIGRATION_STATUS_ERROR,
>      QEMU_MONITOR_MIGRATION_STATUS_CANCELLED,
> +    QEMU_MONITOR_MIGRATION_STATUS_SETUP,
> 
>      QEMU_MONITOR_MIGRATION_STATUS_LAST
>  };
> 
> -- 
> libvir-list mailing list
> libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list

This patch cannot be applied:

$ git am ../../patches/libvirt/\[libvirt\]\ \[PATCH\]\ Fix\ migration\
with\ qemu\ 1.6.eml
Applying: Fix migration with qemu 1.6
error: patch failed: src/qemu/qemu_migration.c:1644
error: src/qemu/qemu_migration.c: patch does not apply
error: patch failed: src/qemu/qemu_monitor.c:114
error: src/qemu/qemu_monitor.c: patch does not apply
error: patch failed: src/qemu/qemu_monitor.h:397
error: src/qemu/qemu_monitor.h: patch does not apply
Patch failed at 0001 Fix migration with qemu 1.6
The copy of the patch that failed is found in:
   /home/zippy/work/libvirt/libvirt.git/.git/rebase-apply/patch
When you have resolved this problem, run "git am --resolved".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".


Did you hand-edit the patch? The best way to send patches is via 'git
send-email' as you avoid even the second unpleasant fact: some MTA magle
patches.

Michal




More information about the libvir-list mailing list