Commit 134d153c authored by Liam R. Howlett's avatar Liam R. Howlett Committed by Andrew Morton

maple_tree: relax lockdep checks for on-stack trees

To support early release of the maple tree locks, do not lockdep check the
lock if it is set to NULL.  This is intended for the special case on-stack
use of tracking entries and not for general use.

Link: https://lkml.kernel.org/r/20230714195551.894800-3-Liam.Howlett@oracle.comSigned-off-by: default avatarLiam R. Howlett <Liam.Howlett@oracle.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oliver Sang <oliver.sang@intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 2574d5e4
...@@ -182,7 +182,9 @@ enum maple_type { ...@@ -182,7 +182,9 @@ enum maple_type {
#ifdef CONFIG_LOCKDEP #ifdef CONFIG_LOCKDEP
typedef struct lockdep_map *lockdep_map_p; typedef struct lockdep_map *lockdep_map_p;
#define mt_lock_is_held(mt) lock_is_held(mt->ma_external_lock) #define mt_lock_is_held(mt) \
(!(mt)->ma_external_lock || lock_is_held((mt)->ma_external_lock))
#define mt_set_external_lock(mt, lock) \ #define mt_set_external_lock(mt, lock) \
(mt)->ma_external_lock = &(lock)->dep_map (mt)->ma_external_lock = &(lock)->dep_map
#else #else
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment