Helper to init PSS structures. Signed-off-by: Peter Xu <pet...@redhat.com> --- migration/ram.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/migration/ram.c b/migration/ram.c index adcc57c584..bdfcc6171a 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -535,6 +535,14 @@ static bool do_compress_ram_page(QEMUFile *f, z_stream *stream, RAMBlock *block, static void postcopy_preempt_restore(RAMState *rs, PageSearchStatus *pss, bool postcopy_requested); +/* NOTE: page is the PFN not real ram_addr_t. */ +static void pss_init(PageSearchStatus *pss, RAMBlock *rb, ram_addr_t page) +{ + pss->block = rb; + pss->page = page; + pss->complete_round = false; +} + static void *do_data_compress(void *opaque) { CompressParam *param = opaque; @@ -2625,9 +2633,7 @@ static int ram_find_and_save_block(RAMState *rs) return pages; } - pss.block = rs->last_seen_block; - pss.page = rs->last_page; - pss.complete_round = false; + pss_init(&pss, rs->last_seen_block, rs->last_page); if (!pss.block) { pss.block = QLIST_FIRST_RCU(&ram_list.blocks); -- 2.32.0