summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2012-03-01 22:06:48 -0500
committerSteven Rostedt <rostedt@goodmis.org>2012-03-01 22:06:48 -0500
commitb892e5c89787716b95a8e55d77d25a1c0748df10 (patch)
treeed77ec8ab4db28fb900653cee4b719cf02a3a911
parent8c9cf542b8a66c231747a550573d910daf17f0e9 (diff)
downloadlinux-b892e5c89787716b95a8e55d77d25a1c0748df10.tar.gz
linux-b892e5c89787716b95a8e55d77d25a1c0748df10.tar.bz2
linux-b892e5c89787716b95a8e55d77d25a1c0748df10.zip
tracing: Keep NMI watchdog from triggering when dumping trace
As ftrace_dump() (called by ftrace_dump_on_oops) disables interrupts as it dumps its output to the console, it can keep interrupts disabled for long periods of time. This is likely to trigger the NMI watchdog, and it can disrupt the output of critical data. Add a touch_nmi_watchdog() to each event that is written to the screen to keep the NMI watchdog from affecting the output. Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r--kernel/trace/trace.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index f3c13d63d064..3a19c354edd6 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -36,6 +36,7 @@
#include <linux/ctype.h>
#include <linux/init.h>
#include <linux/poll.h>
+#include <linux/nmi.h>
#include <linux/fs.h>
#include "trace.h"
@@ -4903,6 +4904,7 @@ __ftrace_dump(bool disable_tracing, enum ftrace_dump_mode oops_dump_mode)
if (ret != TRACE_TYPE_NO_CONSUME)
trace_consume(&iter);
}
+ touch_nmi_watchdog();
trace_printk_seq(&iter.seq);
}