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

From: Mathieu Desnoyers
Date: Tue Apr 20 2021 - 11:15:18 EST


----- On Apr 20, 2021, at 10:55 AM, rostedt rostedt@xxxxxxxxxxx wrote:

> 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.

That sounds fine. So that would be within the "trace_event" (and not tracepoint)
namespace for module load parameters as well ?

Thanks,

Mathieu

--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com