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

Liam R. Howlett posted 4 patches 2 years, 6 months ago
include/linux/maple_tree.h | 11 +++++++++--
lib/maple_tree.c           | 10 ++++++++--
mm/mmap.c                  | 28 ++++++----------------------
3 files changed, 23 insertions(+), 26 deletions(-)
[PATCH v2 0/4] More strict maple tree lockdep
Posted by Liam R. Howlett 2 years, 6 months ago
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
Re: [PATCH v2 0/4] More strict maple tree lockdep
Posted by Linus Torvalds 2 years, 6 months ago
On Fri, 14 Jul 2023 at 12:56, Liam R. Howlett <Liam.Howlett@oracle.com> wrote:
>
> 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.

Ack, LGTM. I assume that there were no lockdep errors found by all this..

              Linus
Re: [PATCH v2 0/4] More strict maple tree lockdep
Posted by Liam R. Howlett 2 years, 6 months ago
* Linus Torvalds <torvalds@linux-foundation.org> [230714 16:16]:
> On Fri, 14 Jul 2023 at 12:56, Liam R. Howlett <Liam.Howlett@oracle.com> wrote:
> >
> > 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.
> 
> Ack, LGTM. I assume that there were no lockdep errors found by all this..
> 

No lockdeps errors.  My config has the additional CONFIG_PROVE_RCU=y
this time, which I missed during the previous locking changes.

Thanks,
Liam