]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
tracing: Make tracing_update_buffers() take NULL for global_trace
authorSteven Rostedt <rostedt@goodmis.org>
Sun, 8 Feb 2026 03:24:23 +0000 (22:24 -0500)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Mon, 9 Feb 2026 02:01:12 +0000 (21:01 -0500)
The trace.c file has become a dumping ground for all tracing code and has
become quite large. In order to move the trace_printk functions out of it
these functions can not access global_trace directly, as that is something
that needs to stay static in trace.c.

Have tracing_update_buffers() take NULL for its trace_array to denote it
should work on the global_trace top level trace_array allows that function
to be used outside of trace.c and still update the global_trace
trace_array.

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Link: https://patch.msgid.link/20260208032450.318864210@kernel.org
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
kernel/trace/trace.c

index 4a73822e2603c91b9ae6d17d7115dec915eeed44..601b6f622391337c01a908bd2876d38add5f0ace 100644 (file)
@@ -3234,7 +3234,7 @@ void trace_printk_init_buffers(void)
        pr_warn("**********************************************************\n");
 
        /* Expand the buffers to set size */
-       if (tracing_update_buffers(&global_trace) < 0)
+       if (tracing_update_buffers(NULL) < 0)
                pr_err("Failed to expand tracing buffers for trace_printk() calls\n");
        else
                buffers_allocated = 1;
@@ -6186,6 +6186,9 @@ int tracing_update_buffers(struct trace_array *tr)
 {
        int ret = 0;
 
+       if (!tr)
+               tr = &global_trace;
+
        guard(mutex)(&trace_types_lock);
 
        update_last_data(tr);