diff options
author | Steven Rostedt <srostedt@redhat.com> | 2012-03-01 22:06:48 -0500 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2012-03-01 22:06:48 -0500 |
commit | b892e5c89787716b95a8e55d77d25a1c0748df10 (patch) | |
tree | ed77ec8ab4db28fb900653cee4b719cf02a3a911 | |
parent | 8c9cf542b8a66c231747a550573d910daf17f0e9 (diff) | |
download | linux-stable-b892e5c89787716b95a8e55d77d25a1c0748df10.tar.gz linux-stable-b892e5c89787716b95a8e55d77d25a1c0748df10.tar.bz2 linux-stable-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.c | 2 |
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); } |