Re: [PATCH][RFC] tracing: Enable tracepoints via module parameters

From: Steven Rostedt
Date: Tue Apr 20 2021 - 10:55:16 EST


On Tue, 20 Apr 2021 09:29:27 -0400 (EDT)
Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote:

> ----- On Apr 20, 2021, at 8:55 AM, rostedt rostedt@xxxxxxxxxxx wrote:
> [...]
> >
> > Would adding automatic module parameters be an issue? That is, you can add
> > in the insmod command line a parameter that will enable tracepoints. We
> > could have a way to even see them from the modinfo. I think I had that
> > working once, and it wasn't really that hard to do.
>
> There is one thing we should consider here in terms of namespacing: those module
> command line parameters should be specific to each tracer (e.g. ftrace, perf, ebpf).
>
> LTTng for instance already tackles early module load tracing in a different
> way: users can enable instrumentation of yet-to-be loaded kernel modules. So
> it would not make sense in that scheme to have module load parameters.
>
> It's a different trade-off in terms of error reporting though: for instance,
> LTTng won't report an error if a user does a typo when entering an event name.
>
> So I think those command line parameters should be tracer-specific, do you agree ?


No, I do not agree. I would like to make it consistent with the kernel
command line. As you can put in: "trace_event=sched_switch" and the
sched_switch trace point will be enable (for the tracefs directory) on boot
up. The same should be for modules as well.

It shouldn't affect LTTng, as you already have a way to enable them as they
get loaded.

-- Steve