mm: assert the mmap_lock is held in __anon_vma_prepare()
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Fri, 26 Apr 2024 14:45:00 +0000 (15:45 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 6 May 2024 00:53:53 +0000 (17:53 -0700)
commit3be51060599ff01899b6d8c3f8aca456506cf5ea
tree0a684360bd4979d6554b317575e1e4d3827fbed4
parente0ffb29bc54d86b9ab10ebafc66eb1b7229e0cd7
mm: assert the mmap_lock is held in __anon_vma_prepare()

Patch series "Improve anon_vma scalability for anon VMAs".

We have a 3x throughput improvement reported by Intel's kernel test robot:
https://lore.kernel.org/all/202404261055.c5e24608-oliver.sang@intel.com/

This is from delaying taking the mmap_lock for page faults until we
actually need the mmap_lock in order to assign an anon_vma to the vma.  It
cleans up the page fault path a little by making the anon fault handler
more similar to the file fault handler.

This patch (of 4):

Convert the comment into an assertion.

Link: https://lkml.kernel.org/r/20240426144506.1290619-1-willy@infradead.org
Link: https://lkml.kernel.org/r/20240426144506.1290619-2-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Suren Baghdasaryan <surenb@google.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Cc: Jann Horn <jannh@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/rmap.c