]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - kernel/trace/trace.c
tracing: Fix race with update_max_tr_single and changing tracers
[karo-tx-linux.git] / kernel / trace / trace.c
index 4f1dade56981d6fe5d880e9f6caaf609ab1e9c02..7ba7fc76f9ebc655980b734391613184cbe22da3 100644 (file)
@@ -744,8 +744,11 @@ update_max_tr_single(struct trace_array *tr, struct task_struct *tsk, int cpu)
                return;
 
        WARN_ON_ONCE(!irqs_disabled());
-       if (WARN_ON_ONCE(!current_trace->allocated_snapshot))
+       if (!current_trace->allocated_snapshot) {
+               /* Only the nop tracer should hit this when disabling */
+               WARN_ON_ONCE(current_trace != &nop_trace);
                return;
+       }
 
        arch_spin_lock(&ftrace_max_lock);