Re: [PATCH v6] tracing: Preserve repeated boot-time tracing parameters
From: Steven Rostedt
Date: Mon Mar 30 2026 - 12:43:57 EST
On Mon, 30 Mar 2026 12:37:43 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> On Mon, 30 Mar 2026 10:43:22 -0400
> Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> > diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
> > index 9928da636c9d..7754a8adb58a 100644
> > --- a/kernel/trace/trace_events.c
> > +++ b/kernel/trace/trace_events.c
> > @@ -3677,20 +3677,24 @@ static struct boot_triggers {
> > } bootup_triggers[MAX_BOOT_TRIGGERS];
> >
> > static char bootup_trigger_buf[COMMAND_LINE_SIZE];
> > +static int boot_trigger_buf_len;
> > static int nr_boot_triggers;
> >
> > static __init int setup_trace_triggers(char *str)
> > {
> > char *trigger;
> > char *buf;
> > + int len = boot_trigger_buf_len;
> > int i;
> >
> > - strscpy(bootup_trigger_buf, str, COMMAND_LINE_SIZE);
> > + strscpy(bootup_trigger_buf + len , str, COMMAND_LINE_SIZE - len);
> > trace_set_ring_buffer_expanded(NULL);
> > disable_tracing_selftest("running event triggers");
> >
> > - buf = bootup_trigger_buf;
> > - for (i = 0; i < MAX_BOOT_TRIGGERS; i++) {
> > + buf = bootup_trigger_buf + len;
> > + boot_trigger_buf_len += strlen(buf);
>
> The above needs to skip the '\0' too:
>
> boot_trigger_buf_len += strlen(buf) + 1;
>
And since this option is different from the rest, lets make it a separate patch.
-- Steve
>
> > +
> > + for (i = nr_boot_triggers; i < MAX_BOOT_TRIGGERS; i++) {
> > trigger = strsep(&buf, ",");
> > if (!trigger)
> > break;
>