summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorSteven Rostedt (VMware) <rostedt@goodmis.org>2018-04-03 10:31:47 -0400
committerSteven Rostedt (VMware) <rostedt@goodmis.org>2018-04-06 08:56:51 -0400
commit4c281074d2e7beb8179d81c3d2c2a53ae47dfa1c (patch)
treeee55dcb1ce8cbae59e71f54a13fc648197a4c2da /kernel
parent1e6338cfb50e244c445ad7d891b35385bd0ee757 (diff)
downloadlinux-4c281074d2e7beb8179d81c3d2c2a53ae47dfa1c.tar.bz2
lockdep: Add print_irqtrace_events() to __warn
Running a test on a x86_32 kernel I triggered a bug that an interrupt disable/enable isn't being catched by lockdep. At least knowing where the last one was found would be helpful, but the warnings that are produced do not show this information. Even without debugging lockdep, having the WARN() display the last place hard and soft irqs were enabled or disabled is valuable. Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/panic.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/panic.c b/kernel/panic.c
index 2cfef408fec9..fa8d4cc4956a 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -554,6 +554,8 @@ void __warn(const char *file, int line, void *caller, unsigned taint,
else
dump_stack();
+ print_irqtrace_events(current);
+
print_oops_end_marker();
/* Just a warning, don't kill lockdep. */