Migrate from aarch64 host with PAGE_SIZE 64k to 4k failed with following errors:

qmp_cmd_name: migrate-incoming, arguments: {"uri": "tcp:[::]:49152"}
{"timestamp": {"seconds": 1673922775, "microseconds": 534702}, "event": 
"MIGRATION", "data": {"status": "setup"}}
{"timestamp": {"seconds": 1673922776, "microseconds": 53003}, "event": 
"MIGRATION", "data": {"status": "active"}}
2023-01-17T02:32:56.058827Z qemu-system-aarch64: Length too large: 
/rom@etc/acpi/rsdp: 0x10000 > 0x1000: Invalid argument
2023-01-17T02:32:56.058832Z qemu-system-aarch64: error while loading state for 
instance 0x0 of device 'ram'
2023-01-17T02:32:56.059236Z qemu-system-aarch64: load of migration failed: 
Invalid argument
{"timestamp": {"seconds": 1673922776, "microseconds": 59248}, "event": 
"MIGRATION", "data": {"status": "failed"}}
2023-01-17 02:32:56.306+0000: shutting down, reason=failed

refer to the following commit, set blob "etc/acpi/rsdp" maximum size to 64k 
works.

5033728 acpi: Set proper maximum size for "etc/acpi/rsdp" blob
6c2b24d acpi: Set proper maximum size for "etc/table-loader" blob

Signed-off-by: Sun Feng <loyo...@gmail.com>
---
 hw/acpi/utils.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/acpi/utils.c b/hw/acpi/utils.c
index 0c486ea..85f6ff3 100644
--- a/hw/acpi/utils.c
+++ b/hw/acpi/utils.c
@@ -37,7 +37,7 @@ MemoryRegion *acpi_add_rom_blob(FWCfgCallback update, void 
*opaque,
     } else if (!strcmp(name, ACPI_BUILD_LOADER_FILE)) {
         max_size = 0x10000;
     } else if (!strcmp(name, ACPI_BUILD_RSDP_FILE)) {
-        max_size = 0x1000;
+        max_size = 0x10000;
     } else {
         g_assert_not_reached();
     }
-- 
2.7.4


Reply via email to