Re: [PATCH mm-new 1/3] mm/khugepaged: skip unsuitable VMAs earlier in khugepaged_scan_mm_slot()
From: Lance Yang
Date: Tue Sep 16 2025 - 02:21:48 EST
Hi Hugh,
Thanks for taking a look and for raising this important point!
On 2025/9/16 13:32, Hugh Dickins wrote:
On Sun, 14 Sep 2025, Lance Yang wrote:
From: Lance Yang <lance.yang@xxxxxxxxx>
Let's skip unsuitable VMAs early in the khugepaged scan; specifically,
mlocked VMAs should not be touched.
Why? That's a change in behaviour, isn't it?
I'm aware that hugepage collapse on an mlocked VMA can insert a fault
latency, not universally welcome; but I've not seen discussion, let
alone agreement, that current behaviour should be changed.
Somewhere in yet-to-be-read mail? Please give us a link.
Hugh
You're right, this is indeed a change in behaviour. But it's specifically
for khugepaged.
Users of mlock() expect low and predictable latency. THP collapse is a
heavy operation that introduces exactly the kind of unpredictable delays
they want to avoid. It has to unmap PTEs, copy data from the small folios
to a new THP, and then remap the THP back to the PMD ;)
IMO, that change is acceptable because THP is generally transparent to
users, and khugepaged does not guarantee when THP collapse or split will
happen.
Well, we don't have a discussion on that, just something I noticed.
Thanks,
Lance