Re: [PATCH 1/2] tracing, boottrace: Move include/trace/boot.h toinclude/linux/boottrace.h

From: Ingo Molnar
Date: Mon Apr 13 2009 - 19:28:31 EST



* Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

>
> On Tue, 14 Apr 2009, Ingo Molnar wrote:
>
> >
> > * Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:
> >
> > > On Mon, Apr 13, 2009 at 11:54:11AM +0800, Zhaolei wrote:
> > > > Impact: refactor code, no functionality changed
> > > >
> > > > Files in include/trace/ should be definition of tracepoints, and header
> > > > file for boot trace should put to include/linux/.
> > > >
> > > > Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
> > > > ---
> > >
> > > Until now I had the opinion that it's good to let every tracing
> > > headers to be placed in include/trace/* because they are not
> > > useful for anything else than the tracer itself so that we don't
> > > encumber include/linux for private things.
> > >
> > > So that we have both tracepoints/trace_events plus the low-level
> > > tracers headers in include/trace/*
> > >
> > > I'm not opposite to this change, but seeing this patch and the
> > > recent divide of kmemtrace headers, I would like to know the
> > > opinion of Ingo and Steven about the strict role of
> > > include/trace/* Is it only for tracepoints-like bits, or oslo
> > > intended for every private tracing purposes?
> >
> > The header split itself is probably good to do - to keep the 'pure'
> > portions of tracepoint definitions cleanly separated from more
> > functional details like kmem tracer initialization.
> >
> > The move to include/linux/ is indeed more debatable. I think if a
> > header says 'footrace.h' in its name, it could easily be in
> > include/trace/foo.h instead? Makes for a tidier structure -
> > include/linux/ is massively over-crowded already.
> >
> > Steve, what do you think?
>
> We actually discussed this a little at the Linux Collaboration
> Summit. The idea was to keep only the tracepoints aka TRACE_EVENT
> code in include/trace/ and perhaps special headers that work with
> the TRACE_EVENT macros. But the infrastructure of the tracers
> would stay in include/linux.
>
> The rational is that we have a separate directory reserved only
> for trace points / trace events. Adding more headers into that
> directory would make it a bit harder to see right away what trace
> events where defined for a particular kernel source.

Hm, i have to say that is true committee design ;-)

The sane thing would be to put event headers into
include/trace/events/ and put more generic/utility headers into
include/trace/.

Reserving a full subdirectory for one singular purpose is a needless
waste of a nice (and unique) name-space resource.

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