summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2022-02-20 12:50:50 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2022-02-20 12:50:50 -0800
commit3324e6e803156b4296975555f566892e4e3f4fcf (patch)
tree733c03e886f991630453986b4d0ea0eb8823e7fe
parent222177397aabda681ca9a16ab498bba5c597cda0 (diff)
parent28df029d53a2fd80c1b8674d47895648ad26dcfb (diff)
downloadlinux-3324e6e803156b4296975555f566892e4e3f4fcf.tar.gz
linux-3324e6e803156b4296975555f566892e4e3f4fcf.tar.bz2
linux-3324e6e803156b4296975555f566892e4e3f4fcf.zip
Merge tag 'locking_urgent_for_v5.17_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull locking fix from Borislav Petkov: "Fix a NULL ptr dereference when dumping lockdep chains through /proc/lockdep_chains" * tag 'locking_urgent_for_v5.17_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: lockdep: Correct lock_classes index mapping
-rw-r--r--kernel/locking/lockdep.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
index 4a882f83aeb9..f8a0212189ca 100644
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -3462,7 +3462,7 @@ struct lock_class *lock_chain_get_class(struct lock_chain *chain, int i)
u16 chain_hlock = chain_hlocks[chain->base + i];
unsigned int class_idx = chain_hlock_class_idx(chain_hlock);
- return lock_classes + class_idx - 1;
+ return lock_classes + class_idx;
}
/*
@@ -3530,7 +3530,7 @@ static void print_chain_keys_chain(struct lock_chain *chain)
hlock_id = chain_hlocks[chain->base + i];
chain_key = print_chain_key_iteration(hlock_id, chain_key);
- print_lock_name(lock_classes + chain_hlock_class_idx(hlock_id) - 1);
+ print_lock_name(lock_classes + chain_hlock_class_idx(hlock_id));
printk("\n");
}
}