Check the host pointer is correctly aligned, otherwise we may fail during migration in ram_block_discard_range().
Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> --- migration/savevm.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/migration/savevm.c b/migration/savevm.c index a71b930b91..ab6e02011f 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -2910,6 +2910,11 @@ err_drain: void vmstate_register_ram(MemoryRegion *mr, DeviceState *dev) { + RAMBlock *rb = mr->ram_block; + uintptr_t hostaddr = (uintptr_t)qemu_ram_get_host_addr(rb); + + assert((hostaddr & (qemu_ram_pagesize(rb) - 1)) == 0); + qemu_ram_set_idstr(mr->ram_block, memory_region_name(mr), dev); qemu_ram_set_migratable(mr->ram_block); -- 2.24.0.308.g228f53135a