Re: [for-next][PATCH 08/20] tracing: Warn if a tracepoint is not set via debugfs

From: Mathieu Desnoyers
Date: Wed Mar 12 2014 - 23:21:32 EST


----- Original Message -----
> From: "Andi Kleen" <andi@xxxxxxxxxxxxxx>
> To: "Mathieu Desnoyers" <mathieu.desnoyers@xxxxxxxxxxxx>
> Cc: "Andi Kleen" <andi@xxxxxxxxxxxxxx>, "Steven Rostedt" <rostedt@xxxxxxxxxxx>, "Frank Ch. Eigler" <fche@xxxxxxxxxx>,
> linux-kernel@xxxxxxxxxxxxxxx, "Ingo Molnar" <mingo@xxxxxxxxxx>, "Frederic Weisbecker" <fweisbec@xxxxxxxxx>, "Andrew
> Morton" <akpm@xxxxxxxxxxxxxxxxxxxx>, "Johannes Berg" <johannes.berg@xxxxxxxxx>, "Linus Torvalds"
> <torvalds@xxxxxxxxxxxxxxxxxxxx>, "Peter Zijlstra" <peterz@xxxxxxxxxxxxx>, "Thomas Gleixner" <tglx@xxxxxxxxxxxxx>,
> "Greg Kroah-Hartman" <gregkh@xxxxxxxxxxxxxxxxxxx>, "lttng-dev" <lttng-dev@xxxxxxxxxxxxxxx>, "Rusty Russell"
> <rusty@xxxxxxxxxxxxxxx>
> Sent: Wednesday, March 12, 2014 11:15:01 PM
> Subject: Re: [for-next][PATCH 08/20] tracing: Warn if a tracepoint is not set via debugfs
>
> On Wed, Mar 12, 2014 at 08:47:07PM +0000, Mathieu Desnoyers wrote:
> > ----- Original Message -----
> > > From: "Andi Kleen" <andi@xxxxxxxxxxxxxx>
> > > To: "Mathieu Desnoyers" <mathieu.desnoyers@xxxxxxxxxxxx>
> > > Cc: "Steven Rostedt" <rostedt@xxxxxxxxxxx>, "Frank Ch. Eigler"
> > > <fche@xxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, "Ingo
> > > Molnar" <mingo@xxxxxxxxxx>, "Frederic Weisbecker" <fweisbec@xxxxxxxxx>,
> > > "Andrew Morton" <akpm@xxxxxxxxxxxxxxxxxxxx>,
> > > "Johannes Berg" <johannes.berg@xxxxxxxxx>, "Linus Torvalds"
> > > <torvalds@xxxxxxxxxxxxxxxxxxxx>, "Peter Zijlstra"
> > > <peterz@xxxxxxxxxxxxx>, "Thomas Gleixner" <tglx@xxxxxxxxxxxxx>, "Greg
> > > Kroah-Hartman" <gregkh@xxxxxxxxxxxxxxxxxxx>,
> > > "lttng-dev" <lttng-dev@xxxxxxxxxxxxxxx>, "Rusty Russell"
> > > <rusty@xxxxxxxxxxxxxxx>, "Andi Kleen" <andi@xxxxxxxxxxxxxx>
> > > Sent: Wednesday, March 12, 2014 4:35:15 PM
> > > Subject: Re: [for-next][PATCH 08/20] tracing: Warn if a tracepoint is not
> > > set via debugfs
> > >
> > > > So I understand that you wish to banish tracepoints from static inline
> > > > functions within headers to ensure they only appear within a single
> > > > module.
> > > > This seems to be a step backward, but let's assume we stick to that
> > > > rule.
> > > > Then how do you envision dealing with Link-Time Optimisations (LTO) ?
> > >
> > > I assume it uses the file name defines set by Kbuild?
> >
> > Just to make sure I understand your question: I understand that you are
> > asking
> > whether tracepoints use file name defines at all in the naming of a
> > tracepoint.
> > The answer to this question is: No, they do not.
>
> Ok. It uses kallsyms? That can change of course.

As I just replied to Steven, I now see that I mixed up concerns about
static keys, and the prior kernel markers, with tracepoint concerns.
The way they are implemented are very much different (Hey! I should know,
I wrote that code some 6 years ago!) ;)

> >
> > > These don't change with
> > > LTO. It's whatever was specified at compile time. Also LTO doesn't
> > > inline over module boundaries (if the module is not built in)
> >
> > Good to know. Can it inline core kernel functions into a module ?
>
> Each module and the main kernel are currently LTO'ed separately.
>
> In theory it would be possible to change this, but likely at some
> compile time cost.

OK, thanks for the explanations!

Mathieu

>
> -Andi
>

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