From: "Chaney, Ben" <bcha...@akamai.com> Syncing volatile memory provides no benefit, instead it can cause performance issues in some cases. Only sync memory that is marked as non-volatile after migration completes on destination.
Signed-off-by: Ben Chaney <bcha...@akamai.com> Fixes: bd108a44bc29 (migration: ram: Switch to ram block writeback) Link: https://lore.kernel.org/r/1cc43f59-336f-4a12-84ad-db89e0a17...@akamai.com Signed-off-by: Peter Xu <pet...@redhat.com> (cherry picked from commit 983899eab4939dc4dff67fa4d822c5b4df7eae21) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> diff --git a/migration/ram.c b/migration/ram.c index 424df6d9f1..a0784d99b2 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -3598,7 +3598,9 @@ static int ram_load_cleanup(void *opaque) RAMBlock *rb; RAMBLOCK_FOREACH_NOT_IGNORED(rb) { - qemu_ram_block_writeback(rb); + if (memory_region_is_nonvolatile(rb->mr)) { + qemu_ram_block_writeback(rb); + } } xbzrle_load_cleanup(); -- 2.47.2