Message ID | 20240403083805.1818160-1-wangkefeng.wang@huawei.com (mailing list archive) |
---|---|
Headers | show |
Series | arch/mm/fault: accelerate pagefault when badaccess | expand |
On Wed, 3 Apr 2024 16:37:58 +0800 Kefeng Wang <wangkefeng.wang@huawei.com> wrote: > After VMA lock-based page fault handling enabled, if bad access met > under per-vma lock, it will fallback to mmap_lock-based handling, > so it leads to unnessary mmap lock and vma find again. A test from > lmbench shows 34% improve after this changes on arm64, > > lat_sig -P 1 prot lat_sig 0.29194 -> 0.19198 > > Only build test on other archs except arm64. Thanks. So we now want a bunch of architectures to runtime test this. Do we have a selftest in place which will adequately do this?
On 2024/4/4 4:45, Andrew Morton wrote: > On Wed, 3 Apr 2024 16:37:58 +0800 Kefeng Wang <wangkefeng.wang@huawei.com> wrote: > >> After VMA lock-based page fault handling enabled, if bad access met >> under per-vma lock, it will fallback to mmap_lock-based handling, >> so it leads to unnessary mmap lock and vma find again. A test from >> lmbench shows 34% improve after this changes on arm64, >> >> lat_sig -P 1 prot lat_sig 0.29194 -> 0.19198 >> >> Only build test on other archs except arm64. > > Thanks. So we now want a bunch of architectures to runtime test this. Do > we have a selftest in place which will adequately do this? I don't find such selftest, and badaccess would lead to coredump, the performance should not affect most scene, so no selftest is acceptable. lmbench is easy to use to measure the performance.
On Sun, Apr 07, 2024 at 03:49:53PM +0800, Kefeng Wang wrote: > On 2024/4/4 4:45, Andrew Morton wrote: > > On Wed, 3 Apr 2024 16:37:58 +0800 Kefeng Wang <wangkefeng.wang@huawei.com> wrote: > > > > > After VMA lock-based page fault handling enabled, if bad access met > > > under per-vma lock, it will fallback to mmap_lock-based handling, > > > so it leads to unnessary mmap lock and vma find again. A test from > > > lmbench shows 34% improve after this changes on arm64, > > > > > > lat_sig -P 1 prot lat_sig 0.29194 -> 0.19198 > > > > > > Only build test on other archs except arm64. > > > > Thanks. So we now want a bunch of architectures to runtime test this. Do > > we have a selftest in place which will adequately do this? > > I don't find such selftest, and badaccess would lead to coredump, the > performance should not affect most scene, so no selftest is acceptable. > lmbench is easy to use to measure the performance. The rationale for this series (performance improvement) is a bit odd, since I would expect that the changed code is usually never executed.