Re: [RFC PATCH v2 04/11] mm: khugepaged: add shmem mTHP collapse support

From: Baolin Wang

Date: Thu Jun 11 2026 - 08:13:43 EST




On 6/11/26 2:06 PM, Lance Yang wrote:

On Wed, Jun 10, 2026 at 06:29:12PM +0800, Baolin Wang wrote:
[...]
@@ -2768,15 +2827,23 @@ static enum scan_result collapse_scan_file(struct mm_struct *mm,
else
cc->progress += HPAGE_PMD_NR;

- if (result == SCAN_SUCCEED) {
- if (present < HPAGE_PMD_NR - max_ptes_none) {
- result = SCAN_EXCEED_NONE_PTE;
- count_vm_event(THP_SCAN_EXCEED_NONE_PTE);
- } else {
- result = collapse_file(mm, addr, file, start, cc, HPAGE_PMD_ORDER);
- }
+ if (result != SCAN_SUCCEED)
+ goto out;
+
+ if (present < HPAGE_PMD_NR - max_ptes_none) {
+ result = SCAN_EXCEED_NONE_PTE;
+ count_vm_event(THP_SCAN_EXCEED_NONE_PTE);
+ count_mthp_stat(HPAGE_PMD_ORDER,
+ MTHP_STAT_COLLAPSE_EXCEED_NONE);
+ goto out;
}

+ result = mthp_collapse(mm, file, start, addr, 0, 0, cc, enabled_orders);

Feels like the second 0 wants to be "swap", no?

It seems so. This reminds me of the issue you’re trying to fix in [1].

[1] https://lore.kernel.org/all/20260609120443.71864-1-lance.yang@xxxxxxxxx/