On 05/15/2017 10:58 AM, 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
> pfn_to_online_page()
> 
> Signed-off-by: Michal Hocko <mho...@suse.com>

Acked-by: Vlastimil Babka <vba...@suse.cz>

> ---
>  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;
>  
> 

Reply via email to