Re: [PATCH] tracing: skip boot kprobe setup when no events were requested

From: Masami Hiramatsu (Google)

Date: Thu Nov 12 2026 - 21:29:36 EST


On Fri, 6 Nov 2026 10:14:57 +0800, Wenwen Fu <wenwfu@xxxxxxxxxxxxxxxx> wrote:
> setup_boot_kprobe_events() calls enable_boot_kprobe_events() even when
> the kprobe_event= boot parameter was not supplied. That call takes
> event_mutex without any command-line probes to enable.
>
> Asynchronous eval-map updates also hold event_mutex. A normal boot can
> therefore wait in init_kprobe_trace() for this background work despite
> having no boot probes to set up.
>
> Return early when the boot-event buffer is empty. Keep the mutex
> protection in trace_event_update_all() and retain setup for explicit
> kprobe_event= parameters. Bootconfig handles its own probe enablement,
> and the existing trace_eval_sync() still waits for background work
> before init memory is freed.

Nice catch! This looks good to me. Let me pick it with below tag.

Fixes: 970988e19eb0 ("tracing/kprobe: Add kprobe_event= boot parameter")

Thanks,

>
> Signed-off-by: Wenwen Fu <wenwfu@xxxxxxxxxxxxxxxx>
> ---
> kernel/trace/trace_kprobe.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
> index ee8171b19bee..52ec16d8d838 100644
> --- a/kernel/trace/trace_kprobe.c
> +++ b/kernel/trace/trace_kprobe.c
> @@ -1995,6 +1995,9 @@ static __init void setup_boot_kprobe_events(void)
> char *p, *cmd = kprobe_boot_events_buf;
> int ret;
>
> + if (!kprobe_boot_events_buf[0])
> + return;
> +
> strreplace(kprobe_boot_events_buf, ',', ' ');
>
> while (cmd && *cmd != '\0') {
>

--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>