mm/mmap: change detached vma locking scheme
authorLiam R. Howlett <Liam.Howlett@oracle.com>
Wed, 5 Jul 2023 18:47:49 +0000 (14:47 -0400)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 18 Aug 2023 17:12:40 +0000 (10:12 -0700)
commit02fdb25fb41c563a3afbd4a97469c527a6c5abbf
treef12c603e12d65fcd30c37899b3e2669aceea54cd
parent134d153c9346fc1b2842cacec8720da3a9667a11
mm/mmap: change detached vma locking scheme

Don't set the lock to the mm lock so that the detached VMA tree does not
complain about being unlocked when the mmap_lock is dropped prior to
freeing the tree.

Introduce mt_on_stack() for setting the external lock to NULL only when
LOCKDEP is used.

Move the destroying of the detached tree outside the mmap lock all
together.

Link: https://lkml.kernel.org/r/20230719183142.ktgcmuj2pnlr3h3s@revolver
Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oliver Sang <oliver.sang@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/maple_tree.h
mm/mmap.c