Re: [RFC][PATCH] tracing/module: Move tracepoint out of module.h

From: Steven Rostedt
Date: Thu Jan 26 2012 - 09:04:28 EST


[ Added Li who added the original tracepoint ]

On Thu, 2012-01-26 at 14:55 +0100, Ingo Molnar wrote:
> * Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> > On Thu, 2012-01-26 at 11:28 +0100, Ingo Molnar wrote:
> >
> > > How much more do we save if we move all of try_module_get() out
> > > of line? It still seems a rather thick inline function with
> > > preempt section and all. I'd *really* suggest that it should all
> > > be uninlined.
> > >
> >
> > Here's the #'s
> >
> > text data bss dec hex filename
> > 7489488 2249584 9719808 19458880 128eb40 vmlinux-prepatch
> > text data bss dec hex filename
> > 7482458 2248048 9719808 19450314 128c9ca vmlinux-postpatch
> > text data bss dec hex filename
> > 7477393 2248080 9719808 19445281 128b621 vmlinux-updatedpatch
> >
> > Thus we get an additional 5k it seems, for a total of 13k savings.
> >
> > The below patch is what I used. Note, since the tracepoint
> > requires the instruction pointer, I created stub versions that
> > call a "do_" version of the function to pass in the local
> > instruction counter.
>
> Hm, why does this tracepoint include a flat RIP? It's pretty
> superfluous as there's various other (orghogonal) ways to get at
> the RIP.
>
> If the field is needed for compatibility then lets set it to
> zero at the tracepoint level and not burden the module.h
> hotpath.

Perhaps I could use "__builtin_return_address(0)" instead. I'll try that
out. That way, we don't burden the module hotpath, and we keep the old
behavior.

-- Steve


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