From 8215e91463d9000e782c111b4a8f63c242cd92b6 Mon Sep 17 00:00:00 2001 From: aliguori Date: Sun, 5 Apr 2009 19:30:55 +0000 Subject: [PATCH] stop dirty tracking just at the end of migration (Glauber Costa) If there is still work to do, it is not safe to assume we can end the dirty tracking. Specifically, kvm can update the dirty tracking log inside ram_save_block(), leaving pages still out of sync if we go with the current code. Based on a patch by Yaniv Kamay Signed-off-by: Glauber Costa Signed-off-by: Anthony Liguori git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6999 c046a42c-6fe2-441c-8c8c-71466251a162 --- vl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vl.c b/vl.c index 1048bd456c..b294380a4f 100644 --- a/vl.c +++ b/vl.c @@ -3252,10 +3252,10 @@ static int ram_save_live(QEMUFile *f, int stage, void *opaque) /* try transferring iterative blocks of memory */ if (stage == 3) { - cpu_physical_memory_set_dirty_tracking(0); /* flush all remaining blocks regardless of rate limiting */ while (ram_save_block(f) != 0); + cpu_physical_memory_set_dirty_tracking(0); } qemu_put_be64(f, RAM_SAVE_FLAG_EOS);