Re: [RFC][PATCH] tracing: Warn and notify if tracepoints are not loaded due to module taint

From: Mathieu Desnoyers
Date: Wed Feb 26 2014 - 12:24:57 EST


----- Original Message -----
> From: "Steven Rostedt" <rostedt@xxxxxxxxxxx>
> To: "Mathieu Desnoyers" <mathieu.desnoyers@xxxxxxxxxxxx>
> Cc: "Peter Zijlstra" <peterz@xxxxxxxxxxxxx>, "LKML" <linux-kernel@xxxxxxxxxxxxxxx>, "Ingo Molnar" <mingo@xxxxxxxxxx>,
> "Rusty Russell" <rusty@xxxxxxxxxxxxxxx>, "Frederic Weisbecker" <fweisbec@xxxxxxxxx>, "Andrew Morton"
> <akpm@xxxxxxxxxxxxxxxxxxxx>
> Sent: Wednesday, February 26, 2014 11:15:42 AM
> Subject: Re: [RFC][PATCH] tracing: Warn and notify if tracepoints are not loaded due to module taint
>
> On Wed, 26 Feb 2014 12:48:12 +0000 (UTC)
> Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote:
>
> > > How about instead of a WARN, you use a normal KERN_ERR printk(). There's
> > > no point to the entire WARN state dump, that's needlessly verbose.
> > >
> > > When you have a normal error print you can have as many as are required
> > > and put the mod name back in.
> >
> > The good old printk KERN_ERR is a very good idea. I agree that WARN() is
> > too verbose for our needs here.
>
> Actually, it's not so bad for the WARN() after my last patch to only
> allocate (or even process tracepoints) if mod->num_tracepionts is
> greater than zero. I didn't realize you were wasting memory for all
> modules that were loaded.
>
> My fear with the KERN_ERR is that it wont be noticeable enough. Where
> as a stack dump is something that will catch people's attention.
>
> And as Rusty has said, if you are loading a module that is forced, or
> something strange, it is broken. The failure of loading the tracepoints
> of a module is a bug if the module happens to have tracepoints.
>
> After the MOD_SIG fix, any failure should be a big banner bug. Either
> they are using a forced module with tracepoints that should not be
> loaded. Or they have tracepoints is a non-GPL module (which is also a
> big no-no).

Agreed that after the skip for modules containing 0 tracepoints, it gets
much more specific. I like that.

So then a WARN_ON() that prints the specific module name involved would
be the way to go ?

Thanks,

Mathieu

--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/