]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
tracing: Fix desc in error path for the trace remote test module
authorVincent Donnefort <vdonnefort@google.com>
Fri, 15 May 2026 20:16:16 +0000 (21:16 +0100)
committerSteven Rostedt <rostedt@goodmis.org>
Sat, 16 May 2026 20:11:04 +0000 (16:11 -0400)
During initialisation in remote_test_load(), if one of the
simple_ring_buffer fails to initialise, the error path attempts to
rollback initialised buffers. However, the rollback incorrectly uses the
global pointer to the trace descriptor, which is only set upon
successful load completion. Fix the error path by using the local
pointer to the descriptor.

Link: https://patch.msgid.link/20260515201616.337469-1-vdonnefort@google.com
Fixes: ea908a2b79c8 ("tracing: Add a trace remote module for testing")
Reported-by: Sashiko <sashiko-bot@kernel.org>
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
base-commit: 5d6919055dec134de3c40167a490f33c74c12581
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
kernel/trace/remote_test.c

index 6c1b7701ddae8264317f9373031d5c09b68bb924..a3e2c9b606eb1f00433ca020587b166143a3032c 100644 (file)
@@ -110,9 +110,9 @@ static struct trace_buffer_desc *remote_test_load(unsigned long size, void *unus
        return remote_test_buffer_desc;
 
 err_unload:
-       for_each_ring_buffer_desc(rb_desc, cpu, remote_test_buffer_desc)
+       for_each_ring_buffer_desc(rb_desc, cpu, desc)
                remote_test_unload_simple_rb(rb_desc->cpu);
-       trace_remote_free_buffer(remote_test_buffer_desc);
+       trace_remote_free_buffer(desc);
 
 err_free_desc:
        kfree(desc);