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.y...@linux.intel.com> Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com> --- migration/ram.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migration/ram.c b/migration/ram.c index 5c05376d8d..b5759793a9 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -4067,7 +4067,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 */ -- 2.17.1