locking/lockdep: Add number of dynamic keys to /proc/lockdep_stats
authorWaiman Long <longman@redhat.com>
Tue, 6 May 2025 04:20:49 +0000 (21:20 -0700)
committerIngo Molnar <mingo@kernel.org>
Tue, 6 May 2025 16:34:43 +0000 (18:34 +0200)
commitcdb7d2d68cde6145a06a56c9d5d5d917297501c6
treef09d0763743b8f715c727a1995e870ce66a4c043
parent6a1a219f535a437eb12a06d8cef2518e58654beb
locking/lockdep: Add number of dynamic keys to /proc/lockdep_stats

There have been recent reports about running out of lockdep keys:

MAX_LOCKDEP_KEYS too low!

One possible reason is that too many dynamic keys have been registered.
A possible culprit is the lockdep_register_key() call in qdisc_alloc()
of net/sched/sch_generic.c.

Currently, there is no way to find out how many dynamic keys have been
registered. Add such a stat to the /proc/lockdep_stats to get better
clarity.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Bill Wendling <morbo@google.com>
Cc: Justin Stitt <justinstitt@google.com>
Cc: Nathan Chancellor <nathan@kernel.org>
Cc: Nick Desaulniers <nick.desaulniers+lkml@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will@kernel.org>
Cc: llvm@lists.linux.dev
Link: https://lore.kernel.org/r/20250506042049.50060-4-boqun.feng@gmail.com
kernel/locking/lockdep.c
kernel/locking/lockdep_internals.h
kernel/locking/lockdep_proc.c