Messages in this thread | | | From | Kent Overstreet <> | Subject | [PATCH 0/2] lockdep lock comparison function | Date | Fri, 17 Feb 2023 22:21:15 -0500 |
| |
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
| |