This patch resets the trace when it is started by the user. Signed-off-by: Steven Rostedt --- lib/tracing/tracer.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) Index: linux-compile-i386.git/lib/tracing/tracer.c =================================================================== --- linux-compile-i386.git.orig/lib/tracing/tracer.c 2008-01-09 14:14:02.000000000 -0500 +++ linux-compile-i386.git/lib/tracing/tracer.c 2008-01-09 15:17:36.000000000 -0500 @@ -78,6 +78,16 @@ static notrace void trace_function(const raw_local_irq_restore(flags); } +static notrace void mctracer_reset(struct mctracer_trace *tr) +{ + int cpu; + + for_each_online_cpu(cpu) { + tr->trace_idx[cpu] = 0; + atomic_set(&tr->underrun[cpu], 0); + } +} + #ifdef CONFIG_DEBUG_FS enum trace_iterator { TRACE_ITER_SYM_ONLY = 1, @@ -324,6 +334,10 @@ static ssize_t mctracer_ctrl_write(struc val = !!simple_strtoul(buf, NULL, 10); + /* When starting a new trace, reset the buffers */ + if (val) + mctracer_reset(tr); + if (tr->ctrl ^ val) { if (val) register_mcount_function(trace_function); -- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/