diff --git a/mm/khugepaged.c b/mm/khugepaged.c index 57af2c841b4101133b59508d0fb022edf30d9884..40fd9f7b3ed3bcabb9a0e11ba47c4bad314de5c4 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -1399,6 +1399,9 @@ void collapse_pte_mapped_thp(struct mm_struct *mm, unsigned long addr) if (!PageHead(hpage)) goto drop_hpage; + if (compound_order(hpage) != HPAGE_PMD_ORDER) + goto drop_hpage; + if (find_pmd_or_thp_or_none(mm, haddr, &pmd) != SCAN_SUCCEED) goto drop_hpage;