From 00c14997cb95bf3e6c18c2264ef5e10642d89b3a Mon Sep 17 00:00:00 2001
From: Pawit Pornkitprasan
Date: Fri, 19 Jul 2013 11:23:45 +0900
Subject: [PATCH 1/2] migration: send total time in QMP at "completed" stage
The "completed" stage sets total_time but not has_total_time and
thus it is not sent via QMP reply (but sent via HMP nevertheless)
Signed-off-by: Pawit Pornkitprasan
Reviewed-by: Eric Blake
Reviewed-by: Orit Wasserman
Signed-off-by: Luiz Capitulino
---
migration.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/migration.c b/migration.c
index 9fc72943fb..3f682cdc7f 100644
--- a/migration.c
+++ b/migration.c
@@ -231,6 +231,7 @@ MigrationInfo *qmp_query_migrate(Error **errp)
info->has_status = true;
info->status = g_strdup("completed");
+ info->has_total_time = true;
info->total_time = s->total_time;
info->has_downtime = true;
info->downtime = s->downtime;
From 8c0426aed1d2279845e6a2c3355da8b5d9926cb6 Mon Sep 17 00:00:00 2001
From: Pawit Pornkitprasan
Date: Tue, 30 Jul 2013 08:39:52 +0900
Subject: [PATCH 2/2] migration: don't use uninitialized variables
The qmp_migrate method uses the 'blk' and 'inc' parameter without
checking if they're valid or not (they may be uninitialized if
command is received via QMP)
Signed-off-by: Pawit Pornkitprasan
Reviewed-by: Eric Blake
Signed-off-by: Luiz Capitulino
---
migration.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/migration.c b/migration.c
index 3f682cdc7f..1402fa7680 100644
--- a/migration.c
+++ b/migration.c
@@ -400,8 +400,8 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk,
MigrationParams params;
const char *p;
- params.blk = blk;
- params.shared = inc;
+ params.blk = has_blk && blk;
+ params.shared = has_inc && inc;
if (s->state == MIG_STATE_ACTIVE || s->state == MIG_STATE_SETUP) {
error_set(errp, QERR_MIGRATION_ACTIVE);