* [PATCH] lockdep: Print more info when MAX_LOCK_DEPTH is exceeded.
@ 2013-02-06 18:56 greearb
2013-02-07 12:12 ` [tip:core/locking] " tip-bot for Ben Greear
2013-02-22 12:26 ` tip-bot for Ben Greear
0 siblings, 2 replies; 3+ messages in thread
From: greearb @ 2013-02-06 18:56 UTC (permalink / raw)
To: linux-kernel; +Cc: peterz, rostedt, mingo, Ben Greear
From: Ben Greear <greearb@candelatech.com>
This helps debug cases where a lock is acquired over and
over without being released.
Signed-off-by: Ben Greear <greearb@candelatech.com>
---
kernel/lockdep.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/kernel/lockdep.c b/kernel/lockdep.c
index 7981e5b..7e76b69 100644
--- a/kernel/lockdep.c
+++ b/kernel/lockdep.c
@@ -3189,8 +3189,12 @@ static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,
return 0;
#endif
if (unlikely(curr->lockdep_depth >= MAX_LOCK_DEPTH)) {
+ debug_show_all_locks();
+ lockdep_print_held_locks(current);
+
debug_locks_off();
- printk("BUG: MAX_LOCK_DEPTH too low!\n");
+ printk("BUG: MAX_LOCK_DEPTH too low, depth: %i max: %lu!\n",
+ curr->lockdep_depth, MAX_LOCK_DEPTH);
printk("turning off the locking correctness validator.\n");
dump_stack();
return 0;
--
1.7.3.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [tip:core/locking] lockdep: Print more info when MAX_LOCK_DEPTH is exceeded
2013-02-06 18:56 [PATCH] lockdep: Print more info when MAX_LOCK_DEPTH is exceeded greearb
@ 2013-02-07 12:12 ` tip-bot for Ben Greear
2013-02-22 12:26 ` tip-bot for Ben Greear
1 sibling, 0 replies; 3+ messages in thread
From: tip-bot for Ben Greear @ 2013-02-07 12:12 UTC (permalink / raw)
To: linux-tip-commits; +Cc: linux-kernel, hpa, mingo, rostedt, greearb, tglx
Commit-ID: 7a508076d4efdfd4fcb6fbd50a32d2c1a6e98791
Gitweb: http://git.kernel.org/tip/7a508076d4efdfd4fcb6fbd50a32d2c1a6e98791
Author: Ben Greear <greearb@candelatech.com>
AuthorDate: Wed, 6 Feb 2013 10:56:19 -0800
Committer: Ingo Molnar <mingo@kernel.org>
CommitDate: Thu, 7 Feb 2013 12:17:43 +0100
lockdep: Print more info when MAX_LOCK_DEPTH is exceeded
This helps debug cases where a lock is acquired over and
over without being released.
Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Ben Greear <greearb@candelatech.com>
Cc: peterz@infradead.org
Link: http://lkml.kernel.org/r/1360176979-4421-1-git-send-email-greearb@candelatech.com
[ Changed the printout ordering. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
kernel/lockdep.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/kernel/lockdep.c b/kernel/lockdep.c
index c783e80..1966746 100644
--- a/kernel/lockdep.c
+++ b/kernel/lockdep.c
@@ -3192,9 +3192,14 @@ static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,
#endif
if (unlikely(curr->lockdep_depth >= MAX_LOCK_DEPTH)) {
debug_locks_off();
- printk("BUG: MAX_LOCK_DEPTH too low!\n");
+ printk("BUG: MAX_LOCK_DEPTH too low, depth: %i max: %lu!\n",
+ curr->lockdep_depth, MAX_LOCK_DEPTH);
printk("turning off the locking correctness validator.\n");
+
+ lockdep_print_held_locks(current);
+ debug_show_all_locks();
dump_stack();
+
return 0;
}
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [tip:core/locking] lockdep: Print more info when MAX_LOCK_DEPTH is exceeded
2013-02-06 18:56 [PATCH] lockdep: Print more info when MAX_LOCK_DEPTH is exceeded greearb
2013-02-07 12:12 ` [tip:core/locking] " tip-bot for Ben Greear
@ 2013-02-22 12:26 ` tip-bot for Ben Greear
1 sibling, 0 replies; 3+ messages in thread
From: tip-bot for Ben Greear @ 2013-02-22 12:26 UTC (permalink / raw)
To: linux-tip-commits; +Cc: linux-kernel, hpa, mingo, rostedt, greearb, tglx
Commit-ID: c0540606837af79b2ae101e5e7b2206e3844d150
Gitweb: http://git.kernel.org/tip/c0540606837af79b2ae101e5e7b2206e3844d150
Author: Ben Greear <greearb@candelatech.com>
AuthorDate: Wed, 6 Feb 2013 10:56:19 -0800
Committer: Ingo Molnar <mingo@kernel.org>
CommitDate: Tue, 19 Feb 2013 08:42:44 +0100
lockdep: Print more info when MAX_LOCK_DEPTH is exceeded
This helps debug cases where a lock is acquired over and
over without being released.
Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Ben Greear <greearb@candelatech.com>
Cc: peterz@infradead.org
Link: http://lkml.kernel.org/r/1360176979-4421-1-git-send-email-greearb@candelatech.com
[ Changed the printout ordering. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
kernel/lockdep.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/kernel/lockdep.c b/kernel/lockdep.c
index 5cf12e7..8a0efac 100644
--- a/kernel/lockdep.c
+++ b/kernel/lockdep.c
@@ -3190,9 +3190,14 @@ static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,
#endif
if (unlikely(curr->lockdep_depth >= MAX_LOCK_DEPTH)) {
debug_locks_off();
- printk("BUG: MAX_LOCK_DEPTH too low!\n");
+ printk("BUG: MAX_LOCK_DEPTH too low, depth: %i max: %lu!\n",
+ curr->lockdep_depth, MAX_LOCK_DEPTH);
printk("turning off the locking correctness validator.\n");
+
+ lockdep_print_held_locks(current);
+ debug_show_all_locks();
dump_stack();
+
return 0;
}
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-02-22 12:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-06 18:56 [PATCH] lockdep: Print more info when MAX_LOCK_DEPTH is exceeded greearb
2013-02-07 12:12 ` [tip:core/locking] " tip-bot for Ben Greear
2013-02-22 12:26 ` tip-bot for Ben Greear
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.