diff options
author | Peter Zijlstra <peterz@infradead.org> | 2022-06-17 16:26:06 +0300 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2022-06-24 10:48:56 +0300 |
commit | eae6d58d67d9739be5f7ae2dbead1d0ef6528243 (patch) | |
tree | bfb9aa2ec7b1f4d7bec5420e6a58c998375b333e /kernel/locking/lockdep.c | |
parent | 7e6b9db27de9f69a705c1a046d45882c768e16c3 (diff) | |
download | linux-eae6d58d67d9739be5f7ae2dbead1d0ef6528243.tar.xz |
locking/lockdep: Fix lockdep_init_map_*() confusion
Commit dfd5e3f5fe27 ("locking/lockdep: Mark local_lock_t") added yet
another lockdep_init_map_*() variant, but forgot to update all the
existing users of the most complicated version.
This could lead to a loss of lock_type and hence an incorrect report.
Given the relative rarity of both local_lock and these annotations,
this is unlikely to happen in practise, still, best fix things.
Fixes: dfd5e3f5fe27 ("locking/lockdep: Mark local_lock_t")
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/YqyEDtoan20K0CVD@worktop.programming.kicks-ass.net
Diffstat (limited to 'kernel/locking/lockdep.c')
-rw-r--r-- | kernel/locking/lockdep.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c index f06b91ca6482..e2f179491b08 100644 --- a/kernel/locking/lockdep.c +++ b/kernel/locking/lockdep.c @@ -5238,9 +5238,10 @@ __lock_set_class(struct lockdep_map *lock, const char *name, return 0; } - lockdep_init_map_waits(lock, name, key, 0, - lock->wait_type_inner, - lock->wait_type_outer); + lockdep_init_map_type(lock, name, key, 0, + lock->wait_type_inner, + lock->wait_type_outer, + lock->lock_type); class = register_lock_class(lock, subclass, 0); hlock->class_idx = class - lock_classes; |