mm/collapse: drop the collapse_possible() wrapper

collapse_possible() only forwards to collapse_possible_orders() and turns
its mask into a bool.  Its three callers can test the mask themselves.

No functional change.

Link: https://lore.kernel.org/20261014171145.3292736-7-kas@kernel.org
Signed-off-by: Kiryl Shutsemau (Meta) <kas@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: David Hildenbrand (Arm) <david@kernel.org>
Reviewed-by: Zi Yan <ziy@nvidia.com>
Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Reviewed-by: Lance Yang <lance.yang@linux.dev>
Assisted-by: LLM
Cc: Lorenzo Stoakes <ljs@kernel.org>
Cc: Liam R. Howlett <liam@infradead.org>
Cc: Nico Pache <nico.pache@linux.dev>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Dev Jain <dev.jain@arm.com>
Cc: Barry Song <baohua@kernel.org>
Cc: Usama Arif <usama.arif@linux.dev>
Cc: Vlastimil Babka <vbabka@kernel.org>
Cc: Jann Horn <jannh@google.com>
This commit is contained in:
Kiryl Shutsemau (Meta) 2026-10-14 18:11:39 +01:00 committed by Andrew Morton
parent 4460650576
commit d5dd87dbd6

View File

@ -494,17 +494,11 @@ static unsigned long collapse_possible_orders(struct vm_area_struct *vma,
return thp_vma_allowable_orders(vma, vm_flags, tva_flags, orders);
}
static bool collapse_possible(struct vm_area_struct *vma,
vm_flags_t vm_flags, enum tva_type tva_flags)
{
return collapse_possible_orders(vma, vm_flags, tva_flags);
}
void khugepaged_enter_vma(struct vm_area_struct *vma,
vm_flags_t vm_flags)
{
if (!mm_flags_test(MMF_VM_HUGEPAGE, vma->vm_mm) && hugepage_enabled()
&& collapse_possible(vma, vm_flags, TVA_KHUGEPAGED))
if (!mm_flags_test(MMF_VM_HUGEPAGE, vma->vm_mm) && hugepage_enabled() &&
collapse_possible_orders(vma, vm_flags, TVA_KHUGEPAGED))
__khugepaged_enter(vma->vm_mm);
}
@ -2881,7 +2875,8 @@ static void collapse_scan_mm_slot(unsigned int progress_max,
cc->progress++;
break;
}
if (!collapse_possible(vma, vma->vm_flags, TVA_KHUGEPAGED)) {
if (!collapse_possible_orders(vma, vma->vm_flags,
TVA_KHUGEPAGED)) {
cc->progress++;
continue;
}
@ -3193,7 +3188,7 @@ int madvise_collapse(struct vm_area_struct *vma, unsigned long start,
BUG_ON(vma->vm_start > start);
BUG_ON(vma->vm_end < end);
if (!collapse_possible(vma, vma->vm_flags, TVA_FORCED_COLLAPSE))
if (!collapse_possible_orders(vma, vma->vm_flags, TVA_FORCED_COLLAPSE))
return -EINVAL;
hstart = ALIGN(start, HPAGE_PMD_SIZE);