We are now ready to enable shmem mTHP collapse, allowing thp_vma_allowable_orders() to check all permissible shmem large orders.
Signed-off-by: Baolin Wang <[email protected]> --- mm/khugepaged.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mm/khugepaged.c b/mm/khugepaged.c index 75b18ec4a6c3..a87918b7e18c 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -578,9 +578,14 @@ static unsigned long collapse_possible_orders(struct vm_area_struct *vma, { unsigned long orders; - /* If khugepaged is scanning an anonymous vma, allow mTHP collapse */ + /* + * If khugepaged is scanning an anonymous or shmem vma, + * allow mTHP collapse. + */ if ((tva_flags == TVA_KHUGEPAGED) && vma_is_anonymous(vma)) orders = THP_ORDERS_ALL_ANON; + else if ((tva_flags == TVA_KHUGEPAGED) && vma_is_shmem(vma)) + orders = THP_ORDERS_ALL_FILE_DEFAULT; else orders = BIT(HPAGE_PMD_ORDER); -- 2.47.3

