aboutsummaryrefslogtreecommitdiff
path: root/migration/savevm.c
diff options
context:
space:
mode:
authorDavid Hildenbrand <david@redhat.com>2020-06-26 09:22:36 +0200
committerMichael S. Tsirkin <mst@redhat.com>2020-07-02 05:54:59 -0400
commit18b1d3c952d00ef1881852ee46cf41783dacf530 (patch)
tree38473dcc5060f1509b2c93265608f56e51d7cac7 /migration/savevm.c
parent5f1f1902f8e4020f27b4e35631a38c4e68d9be54 (diff)
downloadqemu-18b1d3c952d00ef1881852ee46cf41783dacf530.zip
qemu-18b1d3c952d00ef1881852ee46cf41783dacf530.tar.gz
qemu-18b1d3c952d00ef1881852ee46cf41783dacf530.tar.bz2
migration/colo: Use ram_block_discard_disable()
COLO will copy all memory in a RAM block, disable discarding of RAM. Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Tested-by: Lukas Straub <lukasstraub2@web.de> Cc: "Michael S. Tsirkin" <mst@redhat.com> Cc: Hailiang Zhang <zhang.zhanghailiang@huawei.com> Cc: Juan Quintela <quintela@redhat.com> Cc: "Dr. David Alan Gilbert" <dgilbert@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com> Message-Id: <20200626072248.78761-10-david@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'migration/savevm.c')
-rw-r--r--migration/savevm.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/migration/savevm.c b/migration/savevm.c
index b979ea6..6e01724 100644
--- a/migration/savevm.c
+++ b/migration/savevm.c
@@ -2111,8 +2111,15 @@ static int loadvm_handle_recv_bitmap(MigrationIncomingState *mis,
static int loadvm_process_enable_colo(MigrationIncomingState *mis)
{
- migration_incoming_enable_colo();
- return colo_init_ram_cache();
+ int ret = migration_incoming_enable_colo();
+
+ if (!ret) {
+ ret = colo_init_ram_cache();
+ if (ret) {
+ migration_incoming_disable_colo();
+ }
+ }
+ return ret;
}
/*