If hugepage_migration_supported() returns true, this renders the hugepages_treat_as_movable sysctl completely pointless.
Let's keep this behavior optional by switching the if() condition from || to &&. Signed-off-by: Alexandru Moise <00moses.alexande...@gmail.com> --- mm/hugetlb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 424b0ef08a60..ab28de0122af 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -926,7 +926,7 @@ static struct page *dequeue_huge_page_nodemask(struct hstate *h, gfp_t gfp_mask, /* Movability of hugepages depends on migration support. */ static inline gfp_t htlb_alloc_mask(struct hstate *h) { - if (hugepages_treat_as_movable || hugepage_migration_supported(h)) + if (hugepages_treat_as_movable && hugepage_migration_supported(h)) return GFP_HIGHUSER_MOVABLE; else return GFP_HIGHUSER; -- 2.14.2