]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
tracing/kprobes: Skip setup_boot_kprobe_events() when no cmdline event
authorYaxiong Tian <tianyaxiong@kylinos.cn>
Wed, 4 Feb 2026 01:54:01 +0000 (09:54 +0800)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Fri, 6 Feb 2026 20:27:00 +0000 (15:27 -0500)
When the 'kprobe_event=' kernel command-line parameter is not provided,
there is no need to execute setup_boot_kprobe_events().

This change optimizes the initialization function init_kprobe_trace()
by skipping unnecessary work and effectively prevents potential blocking
that could arise from contention on the event_mutex lock in subsequent
operations.

Link: https://patch.msgid.link/20260204015401.163748-1-tianyaxiong@kylinos.cn
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Yaxiong Tian <tianyaxiong@kylinos.cn>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
kernel/trace/trace_kprobe.c

index 9953506370a5ede4a1b32772171fe55ea7c52ada..89d2740f7bb5419cde77716b96f195b3fc05a805 100644 (file)
@@ -2048,6 +2048,10 @@ static __init int init_kprobe_trace(void)
        trace_create_file("kprobe_profile", TRACE_MODE_READ,
                          NULL, NULL, &kprobe_profile_ops);
 
+       /* If no 'kprobe_event=' cmd is provided, return directly. */
+       if (kprobe_boot_events_buf[0] == '\0')
+               return 0;
+
        setup_boot_kprobe_events();
 
        return 0;