Messages in this thread Patch in this message | | | From | Masami Hiramatsu <> | Subject | [PATCH] tracing: Skip software disabled event at __synth_event_trace_end() | Date | Wed, 12 Feb 2020 14:54:19 +0900 |
| |
When the synthetic event is software disabled, __synth_event_trace_start() does not allocate an event buffer. In this case __synth_event_trace_end() also should not commit the buffer.
Check the trace_state->disabled at __synth_event_trace_end() and if it is disabled, skip it.
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org> --- kernel/trace/trace_events_hist.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/kernel/trace/trace_events_hist.c b/kernel/trace/trace_events_hist.c index 483b3fd1094f..781e4b55e117 100644 --- a/kernel/trace/trace_events_hist.c +++ b/kernel/trace/trace_events_hist.c @@ -1847,6 +1847,9 @@ __synth_event_trace_start(struct trace_event_file *file, static inline void __synth_event_trace_end(struct synth_event_trace_state *trace_state) { + if (trace_state->disabled) + return; + trace_event_buffer_commit(&trace_state->fbuffer); ring_buffer_nest_end(trace_state->buffer);
| |