32 lines
1.3 KiB
Diff
32 lines
1.3 KiB
Diff
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: Stefan Reiter <s.reiter@proxmox.com>
|
||
|
Date: Thu, 4 Feb 2021 17:06:19 +0100
|
||
|
Subject: [PATCH] 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>
|
||
|
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
|
||
|
---
|
||
|
migration/ram.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/migration/ram.c b/migration/ram.c
|
||
|
index 7811cde643..6ace15261c 100644
|
||
|
--- a/migration/ram.c
|
||
|
+++ b/migration/ram.c
|
||
|
@@ -3521,7 +3521,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) {
|