diff options
author | 2020-06-29 23:45:56 -0400 | |
---|---|---|
committer | 2020-06-30 14:29:33 -0400 | |
commit | 7ef282e05132d56b6f6b71e3873f317664bea78b (patch) | |
tree | 8784d94d60792f48e068b83b21fd00db73dfb512 /kernel/trace/ring_buffer.c | |
parent | tracing: not necessary to define DEFINE_EVENT_PRINT to be empty again (diff) | |
download | wireguard-linux-7ef282e05132d56b6f6b71e3873f317664bea78b.tar.xz wireguard-linux-7ef282e05132d56b6f6b71e3873f317664bea78b.zip |
tracing: Move pipe reference to trace array instead of current_tracer
If a process has the trace_pipe open on a trace_array, the current tracer
for that trace array should not be changed. This was original enforced by a
global lock, but when instances were introduced, it was moved to the
current_trace. But this structure is shared by all instances, and a
trace_pipe is for a single instance. There's no reason that a process that
has trace_pipe open on one instance should prevent another instance from
changing its current tracer. Move the reference counter to the trace_array
instead.
This is marked as "Fixes" but is more of a clean up than a true fix.
Backport if you want, but its not critical.
Fixes: cf6ab6d9143b1 ("tracing: Add ref count to tracer for when they are being read by pipe")
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/ring_buffer.c')
0 files changed, 0 insertions, 0 deletions