Re: [PATCH] mm: map maximum pages possible in finish_fault

From: Matthew Wilcox

Date: Fri Feb 06 2026 - 10:23:43 EST


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?