Re: [PATCH] mm,memory_hotplug: Explicitly pass the head to isolate_huge_page

From: Oscar Salvador
Date: Wed Feb 13 2019 - 10:15:54 EST

On Wed, Feb 13, 2019 at 01:33:39PM +0100, Michal Hocko wrote:
> Why isn't our check in has_unmovable_pages sufficient?

Taking a closer look, it should be enough.
I was mainly confused by the fact that if the zone is ZONE_MOVABLE,
we do not keep checking in has_unmovable_pages():

if (zone_idx(zone) == ZONE_MOVABLE)

But I overlooked that htlb_alloc_mask() checks whether the allocation
cand end up in a movable zone.
hugepage_movable_supported() checks that and if the hstate does not
support migration at all, we skip __GFP_MOVABLE.

So I think that the check in has_unmovable_pages() should be more than enough,
so we could strip the checks from do_migrate_ranges() and
scan_movable_pages() regarding hugepage migratability.

I will run some tests just to make sure this holds and then
I will send a patch.

Oscar Salvador