[PATCH 0/2] lockdep lock comparison function

From: Kent Overstreet
Date: Fri Feb 17 2023 - 22:21:30 EST


This patch implements the lock comparison function I've been talking
about, and converts one of bcache's locks to use it.

b->write_lock has different locking rules; I'm not sure there's an easy
way to get rid of lockdep_set_novalidate_class for it - but the code has
changed and my memory is foggy.

I'd like it if we could convert existing uses of *_lock_nested() to this
approach, since it's more rigorous and IMO, much clearer. That'll
require looking at specific use cases, though - the inode lock in
fs/inode.c is the only one I looked at and it's got a lot of nutty stuff
going on.

Kent Overstreet (2):
lockdep: lock_set_lock_cmp_fn()
bcache: Convert to lock_cmp_fn

drivers/md/bcache/btree.c | 15 ++++++++++-
drivers/md/bcache/btree.h | 4 +--
include/linux/lockdep.h | 8 ++++++
include/linux/lockdep_types.h | 6 +++++
kernel/locking/lockdep.c | 51 ++++++++++++++++++++++++++++++++++-
5 files changed, 80 insertions(+), 4 deletions(-)

--
2.39.2