Re: [PATCH] mm: map maximum pages possible in finish_fault
From: Dev Jain
Date: Tue Feb 10 2026 - 08:59:14 EST
On 10/02/26 7:09 pm, Lorenzo Stoakes wrote:
> On Tue, Feb 10, 2026 at 06:58:37PM +0530, Dev Jain wrote:
>> On 06/02/26 8:52 pm, Matthew Wilcox wrote:
>>> On Fri, Feb 06, 2026 at 07:26:48PM +0530, Dev Jain wrote:
>>>> We test the patch with the following userspace program. A shmem VMA of
>>>> 2M is created, and faulted in, with sysfs setting
>>>> hugepages-2048k/shmem_enabled = always, so that the pagecache is populated
>>>> with a 2M folio. Then, a 64K VMA is created, and we fault on each page.
>>>> Then, we do MADV_DONTNEED to zap the pagetable, so that we can fault again
>>>> in the next iteration. We measure the accumulated time taken during
>>>> faulting the VMA.
>>>>
>>>> On arm64,
>>>>
>>>> without patch:
>>>> Total time taken by inner loop: 4701721766 ns
>>>>
>>>> with patch:
>>>> Total time taken by inner loop: 516043507 ns
>>>>
>>>> giving a 9x improvement.
>>> It's nice that you can construct a test-case that shows improvement, but
>>> is there any real workload that benefits from this?
>> I can try to measure this. But, I constructed that testcase to test the
>> code path, not to show a perf boost (although the boost is obvious enough
>> so why not show it). As I say in the description:
>>
>> "Align finish_fault with filemap_map_pages, and map as many pages as
>> possible, without crossing VMA/PMD/file boundaries."
>>
>> The patch should rather be seen as an extension to 19773df031bc
>> ("mm/fault: try to map the entire file folio in finish_fault()").
>> The code which my patch removes, was added when the norm was to still
>> perform per-page fault, the argument being, RSS inflation.
>>
>> Perhaps I can polish the patch description so that it clearly mentions
>> what the objective is.
>>
> Can we make any new respin of this RFC please. I am especially not
> confident given the immediate syzbot etc.
Sure.
>
> If it's a speculative thing without great justification the series should
> be RFC until such time the community decides it's worthwhile.
>
> Thanks, Lorenzo