summary refs log tree commit diff stats
path: root/migration/colo.c
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>2020-03-24 18:36:28 +0300
committerDr. David Alan Gilbert <dgilbert@redhat.com>2020-03-25 12:31:38 +0000
commit27d07fcfa70c3afa0664288cbce5334ed9595a3a (patch)
tree44333d05f57cbc5ba73c5d184ee5e8a63a9d5ff8 /migration/colo.c
parentd96c4d5f193e0e45beec80a6277728b32875bddb (diff)
downloadfocaccia-qemu-27d07fcfa70c3afa0664288cbce5334ed9595a3a.tar.gz
focaccia-qemu-27d07fcfa70c3afa0664288cbce5334ed9595a3a.zip
migration/colo: fix use after free of local_err
local_err is used again in secondary_vm_do_failover() after
replication_stop_all(), so we must zero it. Otherwise try to set
non-NULL local_err will crash.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Message-Id: <20200324153630.11882-5-vsementsov@virtuozzo.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'migration/colo.c')
-rw-r--r--migration/colo.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/migration/colo.c b/migration/colo.c
index 44942c4e23..a54ac84f41 100644
--- a/migration/colo.c
+++ b/migration/colo.c
@@ -93,6 +93,7 @@ static void secondary_vm_do_failover(void)
     replication_stop_all(true, &local_err);
     if (local_err) {
         error_report_err(local_err);
+        local_err = NULL;
     }
 
     /* Notify all filters of all NIC to do checkpoint */