On Wed, Jun 05, 2019 at 09:08:28AM +0800, Wei Yang wrote: > In case we gets a queued page, the order of block is interrupted. We may > not rely on the complete_round flag to say we have already searched the > whole blocks on the list. > > Signed-off-by: Wei Yang <richardw.y...@linux.intel.com> > --- > migration/ram.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/migration/ram.c b/migration/ram.c > index d881981876..e9b40d636d 100644 > --- a/migration/ram.c > +++ b/migration/ram.c > @@ -2290,6 +2290,12 @@ static bool get_queued_page(RAMState *rs, > PageSearchStatus *pss) > */ > pss->block = block; > pss->page = offset >> TARGET_PAGE_BITS; > + > + /* > + * This unqueued page would break the "one round" check, even is > + * really rare.
Why this is needed? Could you help explain the problem first? Thanks, -- Peter Xu