summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWei Yang2019-11-07 13:39:05 +0100
committerJuan Quintela2020-01-20 09:10:23 +0100
commite5e73b0f90d0ac956782378b92897455e8104a7e (patch)
tree97cf869b1205d6f2dfe145272ca28d3b7fc0cf2c
parentmigration/postcopy: count target page number to decide the place_needed (diff)
downloadqemu-e5e73b0f90d0ac956782378b92897455e8104a7e.tar.gz
qemu-e5e73b0f90d0ac956782378b92897455e8104a7e.tar.xz
qemu-e5e73b0f90d0ac956782378b92897455e8104a7e.zip
migration/postcopy: set all_zero to true on the first target page
For the first target page, all_zero is set to true for this round check. After target_pages introduced, we could leverage this variable instead of checking the address offset. Signed-off-by: Wei Yang <richardw.yang@linux.intel.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
-rw-r--r--migration/ram.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/migration/ram.c b/migration/ram.c
index 8ebaea255e..460abfa2c3 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -4102,7 +4102,7 @@ static int ram_load_postcopy(QEMUFile *f)
page_buffer = postcopy_host_page +
((uintptr_t)host & (block->page_size - 1));
/* If all TP are zero then we can optimise the place */
- if (!((uintptr_t)host & (block->page_size - 1))) {
+ if (target_pages == 1) {
all_zero = true;
} else {
/* not the 1st TP within the HP */