tracing/function-graph-tracer: prevent hangs during self-tests
authorFrederic Weisbecker <fweisbec@gmail.com>
Sun, 22 Mar 2009 04:04:35 +0000 (05:04 +0100)
committerIngo Molnar <mingo@elte.hu>
Sun, 22 Mar 2009 13:06:40 +0000 (14:06 +0100)
commitcf586b61f80229491127d3c57c06ed93c9f530d3
tree3f5e0d9429f32b8ad4f53104a260c8dff349cd9b
parentac199db0189c091f2863312061c0575937f68810
tracing/function-graph-tracer: prevent hangs during self-tests

Impact: detect tracing related hangs

Sometimes, with some configs, the function graph tracer can make
the timer interrupt too much slow, hanging the kernel in an endless
loop of timer interrupts servicing.

As suggested by Ingo, this patch brings a watchdog which stops the
selftest after a defined number of functions traced, definitely
disabling this tracer.

For those who want to debug the cause of the function graph trace
hang, you can pass the ftrace_dump_on_oops kernel parameter to dump
the traces after this hang detection.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
LKML-Reference: <1237694675-23509-1-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/trace/trace.c
kernel/trace/trace_selftest.c