From e7ea7509ab95b71445d98b7c76cc74e1e1304779 Mon Sep 17 00:00:00 2001 From: Amit Shah Date: Fri, 11 Apr 2014 09:28:47 +0200 Subject: [PATCH 02/13] migration: qmp_migrate(): keep working after syntax error RH-Author: Amit Shah Message-id: <717d7d24efbff7fe32d70c506edea41ea00d1edc.1397208304.git.amit.shah@redhat.com> Patchwork-id: 58439 O-Subject: [RHEL7.0.z qemu-kvm PATCH 1/1] migration: qmp_migrate(): keep working after syntax error Bugzilla: 1086598 RH-Acked-by: Dr. David Alan Gilbert (git) RH-Acked-by: Amos Kong RH-Acked-by: Luiz Capitulino From: Luiz Capitulino If a user or QMP client enter a bad syntax for the migrate command in QMP/HMP, then the migrate command will never succeed from that point on. For example, if you enter: (qemu) migrate tcp;0:4444 migrate: Parameter 'uri' expects a valid migration protocol Then the migrate command will always fail from now on: (qemu) migrate tcp:0:4444 migrate: There's a migration process in progress The problem is that qmp_migrate() sets the migration status to MIG_STATE_SETUP and doesn't reset it on syntax error. This bug was introduced by commit 29ae8a4133082e16970c9d4be09f4b6a15034617. Bugzilla: 1086598 Reviewed-by: Michael R. Hines Signed-off-by: Luiz Capitulino (cherry picked from commit c950114286ea358a93ce632db0421945e1008395) Signed-off-by: Amit Shah --- migration.c | 1 + 1 file changed, 1 insertion(+) Signed-off-by: Miroslav Rezanina --- migration.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/migration.c b/migration.c index 93de654..7efbd25 100644 --- a/migration.c +++ b/migration.c @@ -457,6 +457,7 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk, #endif } else { error_set(errp, QERR_INVALID_PARAMETER_VALUE, "uri", "a valid migration protocol"); + s->state = MIG_STATE_ERROR; return; } -- 1.7.1