Re: [PATCH] lockdep: Show up to three levels for a deadlock scenario
From: Peter Zijlstra
Date: Tue Dec 19 2017 - 12:29:51 EST
On Tue, Dec 19, 2017 at 12:11:24PM -0500, Steven Rostedt wrote:
> On Tue, 19 Dec 2017 18:07:16 +0100
> Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
> > On Tue, Dec 19, 2017 at 11:52:38AM -0500, Steven Rostedt wrote:
> > > Then I suggest that you can either take my patch to improve the
> > > visual or remove the visual completely, as nobody cares about it.
> >
> > Doesn't apply as is; but can you at least make it shut up if the chain
> > is longer than you support?
>
> I can add that.
>
> >
> > It's really annoying if it shows the AB-BA graphics when you're staring
> > at a 5-6 lock scenario.
>
> I could also make it dynamic, to handle the entire chain. But it will
> make it longer.
Makes it too wide I think, people already have a problem quoting the
thing in emails (wrap mangles like stupid).
Take the below while you're poking at it.. that should hopefully make
the #0 stacktrace go away.
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
index 5fa1324a4f29..6aa431c4ad99 100644
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -1085,7 +1085,8 @@ print_circular_bug_entry(struct lock_list *target, int depth)
printk("\n-> #%u", depth);
print_lock_name(target->class);
printk(KERN_CONT ":\n");
- print_stack_trace(&target->trace, 6);
+ if (depth)
+ print_stack_trace(&target->trace, 6);
return 0;
}