On Fri 21-04-17 14:05:11, Michal Hocko wrote: > From: Michal Hocko <mho...@suse.com> > > __reset_isolation_suitable walks the whole zone pfn range and it tries > to jump over holes by checking the zone for each page. It might still > stumble over offline pages, though. Skip those by checking PageReserved.
ups, forgot to update the changelog here. s@PageReserved@pfn_to_online_page()@ > Signed-off-by: Michal Hocko <mho...@suse.com> > --- > mm/compaction.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/mm/compaction.c b/mm/compaction.c > index 613c59e928cb..fb548e4c7bd4 100644 > --- a/mm/compaction.c > +++ b/mm/compaction.c > @@ -236,10 +236,9 @@ static void __reset_isolation_suitable(struct zone *zone) > > cond_resched(); > > - if (!pfn_valid(pfn)) > + page = pfn_to_online_page(pfn); > + if (!page) > continue; > - > - page = pfn_to_page(pfn); > if (zone != page_zone(page)) > continue; > > -- > 2.11.0 > -- Michal Hocko SUSE Labs