Re: [PATCH 3/9 - v2][RFC] tracing: Remove per event traceregistering

From: Mathieu Desnoyers
Date: Fri May 07 2010 - 11:32:08 EST


* Steven Rostedt (rostedt@xxxxxxxxxxx) wrote:
> On Fri, 2010-05-07 at 10:54 -0400, Mathieu Desnoyers wrote:
> > * Frederic Weisbecker (fweisbec@xxxxxxxxx) wrote:
> > > On Mon, May 03, 2010 at 11:40:48PM -0400, Steven Rostedt wrote:
> > > > From: Steven Rostedt <srostedt@xxxxxxxxxx>
> > > >
> > > > This patch removes the register functions of TRACE_EVENT() to enable
> > > > and disable tracepoints. The registering of a event is now down
> > > > directly in the trace_events.c file. The tracepoint_probe_register()
> > > > is now called directly.
> > > >
> > > > The prototypes are no longer type checked, but this should not be
> > > > an issue since the tracepoints are created automatically by the
> > > > macros. If a prototype is incorrect in the TRACE_EVENT() macro, then
> > > > other macros will catch it.
> > >
> > >
> > >
> > > Agreed. Typechecking matters for human code but not in this context.
> > > Considering that the tracepoint and the probe are created by the same
> > > CPP code, bugs will be tracked down quickly and located to a single
> > > place.
> >
> > So it seems that I am the only one asking for extra type-checking and
> > caring about problems that can appear subtily on architectures where the
> > number of caller/callee arguments must match. And also the only one
> > considering that passing more arguments to a callback that does not
> > expect all of them might be a problem on some architectures.
> >
> > Am I the only one thinking there is something fishy there ? I might be
> > entirely over-paranoid, but this approach has rarely failed me in the
> > past.
>
> I think you are the only one not realizing that the caller and callee
> are created automatically with the same data. There is no human
> intervention here.
>
> You are asking to add a check that I can not see helping. The only way
> to add a check, is to use the automated process to check the automation.
> If the automated process fails, it is very likely the check will also be
> broken and will not catch the bug either.

Tell me where to fetch the git head, I'll add it myself. ;)

Thanks,

Mathieu

>
> -- Steve
>
>

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
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/