aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Reiter <s.reiter@proxmox.com>2021-02-04 17:35:22 +0100
committerDr. David Alan Gilbert <dgilbert@redhat.com>2021-02-08 11:19:52 +0000
commite846b746502e94ce5cb148201ebdaa9c0f658741 (patch)
tree4e79367404796f55908bb11ef5b098242254c1ab
parent0f0d83a456d0a60be9031a19311bfcb0f9519afb (diff)
migration: only check page size match if RAM postcopy is enabled
Postcopy may also be advised for dirty-bitmap migration only, in which case the remote page size will not be available and we'll instead read bogus data, blocking migration with a mismatch error if the VM uses hugepages. Fixes: 58110f0acb ("migration: split common postcopy out of ram postcopy") Signed-off-by: Stefan Reiter <s.reiter@proxmox.com> Message-Id: <20210204163522.13291-1-s.reiter@proxmox.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
-rw-r--r--migration/ram.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/migration/ram.c b/migration/ram.c
index 46e9d4d145..72143da0ac 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -3808,7 +3808,7 @@ static int ram_load_precopy(QEMUFile *f)
}
}
/* For postcopy we need to check hugepage sizes match */
- if (postcopy_advised &&
+ if (postcopy_advised && migrate_postcopy_ram() &&
block->page_size != qemu_host_page_size) {
uint64_t remote_page_size = qemu_get_be64(f);
if (remote_page_size != block->page_size) {