[PATCH v2 0/4] More strict maple tree lockdep

Liam R. Howlett Liam.Howlett at oracle.com
Fri Jul 14 12:55:47 PDT 2023


Linus asked for more strict maple tree lockdep checking [1] and for them
to resume the normal path through Andrews tree.

This series of patches adds checks to ensure the lock is held in write
mode during the write path of the maple tree instead of checking if it's
held at all.

It also reduces the validate_mm() calls by consolidating into commonly
used functions (patch 0001), and removes the necessity of holding the
lock on the detached tree during munmap() operations.

Changes since v1:
 - Moved the relaxing of the lockdep check for on-stack trees to its own
   patch.
 - Moved the on-stack tree destruction to after the lock is dropped in
   patch 0003.

[1] https://lore.kernel.org/linux-mm/CAHk-=wjUp5+tcsHG89ieuwa0wUtSWWBWRt8xOsoZ1nskZbbk-g@mail.gmail.com/
v1: https://lore.kernel.org/linux-mm/CAHk-=wjUp5+tcsHG89ieuwa0wUtSWWBWRt8xOsoZ1nskZbbk-g@mail.gmail.com/
v1 part 2: https://lore.kernel.org/linux-mm/20230705204629.clctvnx4qdqoexyp@revolver/

Liam R. Howlett (4):
  mm/mmap: Clean up validate_mm() calls
  maple_tree: Relax lockdep checks for on-stack trees
  mm/mmap: Change detached vma locking scheme
  maple_tree: Be more strict about locking

 include/linux/maple_tree.h | 11 +++++++++--
 lib/maple_tree.c           | 10 ++++++++--
 mm/mmap.c                  | 28 ++++++----------------------
 3 files changed, 23 insertions(+), 26 deletions(-)

-- 
2.39.2




More information about the maple-tree mailing list