aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/trace
diff options
context:
space:
mode:
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>2013-03-14 14:20:54 -0400
committerSteven Rostedt <rostedt@goodmis.org>2013-03-14 23:40:15 -0400
commit80902822658aab18330569587cdb69ac1dfdcea8 (patch)
tree552d06bf6a7dfcc6c392d7103cfc84e725545c75 /kernel/trace
parent69d34da2984c95b33ea21518227e1f9470f11d95 (diff)
tracing: Keep overwrite in sync between regular and snapshot buffers
Changing the overwrite mode for the ring buffer via the trace option only sets the normal buffer. But the snapshot buffer could swap with it, and then the snapshot would be in non overwrite mode and the normal buffer would be in overwrite mode, even though the option flag states otherwise. Keep the two buffers overwrite modes in sync. Cc: stable@vger.kernel.org Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace')
-rw-r--r--kernel/trace/trace.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 00daf5f8c50b..02debabe9ed4 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -2895,8 +2895,12 @@ static void set_tracer_flags(unsigned int mask, int enabled)
2895 if (mask == TRACE_ITER_RECORD_CMD) 2895 if (mask == TRACE_ITER_RECORD_CMD)
2896 trace_event_enable_cmd_record(enabled); 2896 trace_event_enable_cmd_record(enabled);
2897 2897
2898 if (mask == TRACE_ITER_OVERWRITE) 2898 if (mask == TRACE_ITER_OVERWRITE) {
2899 ring_buffer_change_overwrite(global_trace.buffer, enabled); 2899 ring_buffer_change_overwrite(global_trace.buffer, enabled);
2900#ifdef CONFIG_TRACER_MAX_TRACE
2901 ring_buffer_change_overwrite(max_tr.buffer, enabled);
2902#endif
2903 }
2900 2904
2901 if (mask == TRACE_ITER_PRINTK) 2905 if (mask == TRACE_ITER_PRINTK)
2902 trace_printk_start_stop_comm(enabled); 2906 trace_printk_start_stop_comm(enabled);