aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/trace/trace_hw_branches.c
diff options
context:
space:
mode:
authorMarkus Metzger <markus.t.metzger@intel.com>2009-01-19 04:33:31 -0500
committerIngo Molnar <mingo@elte.hu>2009-01-20 07:03:55 -0500
commite23b8ad83430a6fdfbdbfac365f5b0312dd57f10 (patch)
tree3a3d623f800880dfc37a12ddb35a9887dacb98fe /kernel/trace/trace_hw_branches.c
parentb1818748b0cf9427e48acf9713295e829a0d715f (diff)
x86, ftrace, hw-branch-tracer: reset trace buffer on close
Reset the ftrace buffer on close. Since we use cyclic buffers, the trace is not contiguous, anyway. Signed-off-by: Markus Metzger <markus.t.metzger@intel.com> Signed-off-by: Steven Rostedt <srostedt@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/trace/trace_hw_branches.c')
-rw-r--r--kernel/trace/trace_hw_branches.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/trace/trace_hw_branches.c b/kernel/trace/trace_hw_branches.c
index e56df2c7d679..372b47ac3154 100644
--- a/kernel/trace/trace_hw_branches.c
+++ b/kernel/trace/trace_hw_branches.c
@@ -274,6 +274,11 @@ static void trace_bts_prepare(struct trace_iterator *iter)
274 mutex_unlock(&bts_tracer_mutex); 274 mutex_unlock(&bts_tracer_mutex);
275} 275}
276 276
277static void trace_bts_close(struct trace_iterator *iter)
278{
279 tracing_reset_online_cpus(iter->tr);
280}
281
277void trace_hw_branch_oops(void) 282void trace_hw_branch_oops(void)
278{ 283{
279 mutex_lock(&bts_tracer_mutex); 284 mutex_lock(&bts_tracer_mutex);
@@ -292,7 +297,8 @@ struct tracer bts_tracer __read_mostly =
292 .print_line = bts_trace_print_line, 297 .print_line = bts_trace_print_line,
293 .start = bts_trace_start, 298 .start = bts_trace_start,
294 .stop = bts_trace_stop, 299 .stop = bts_trace_stop,
295 .open = trace_bts_prepare 300 .open = trace_bts_prepare,
301 .close = trace_bts_close
296}; 302};
297 303
298__init static int init_bts_trace(void) 304__init static int init_bts_trace(void)