Re: [PATCH 1/4] tracing: move __DO_TRACE out of line

Ingo Molnar
2009-04-17T16:23:54Z

* Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> wrote:

> > > +#define DEFINE_DO_TRACE(name, proto, args) \
> > > + void __do_trace_##name(struct tracepoint *tp, TP_PROTO(proto)) \
> > > + { \
> >
> > that needs to be marked notrace, otherwise the function tracer
> > becomes noisy. (or even lockupy.)
>
> I guess I'll have to put it more clearly : I am all for minimizing
> tracepoint header dependency, but I'll be nacking this kind of
> out-of-lining patch. Taking a function call, and moving it
> out-of-line (thus duplicating the function call for nothing) seems
> *really* pointless and will hurt tracer performance.

No need to nak - just say you dont like it and it gets fixed :)

I meant to suggest to Jeremy to measure the effect of this
out-of-lining, in terms of instruction count in the hotpath.

> If thread_info.h is now so big that it needs a cleanup, I guess
> we'll just have to do it.

Music to my ears ...

Ingo