Re: trace/events: DECLARE vs DEFINE semantic

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2009-12-03 at 08:51 -0500, Masami Hiramatsu wrote:

> > Basically, we should have a:
> > 
> > kernel/sched_trace.c that includes the include/trace/events/sched.h and
> > does the define.
> > 
> > And the same goes for other trace points.
> 
> Hmm, I'd rather like to move it into kernel/events/ or something new
> sub directory, since those files will have just two lines (define and
> include).

I'm fine with a kernel/events dir.

> 
> >> e.g.
> >>
> >> @kernel/tracepoint.c
> >>  ...
> >>  #define CREATE_TRACE_POINTS
> >>  #include <trace/events/sched.h>
> >>  #include <trace/events/...>
> > 
> > We could do this for all that is defined in the include/trace/events.
> > 
> >>  ...
> >>
> >> @kernel/sched.c
> >>  ...
> >>  #include <trace/events/sched.h>	/* Just include events header */
> >>  ...
> >>
> >> @fs/ext4/super.c (no change, since it can be module)
> >>  ...
> >>  #define CREATE_TRACE_POINTS
> >>  #include <trace/events/ext4.h>
> > 
> > Perhaps we should move out anything in include/trace/events that is also
> > a module into its sub system?
> 
> Would you mean putting those headers in sub-system's directory?
> (e.g. fs/ext4/)
> In that case, a problem will happen when user want to hook those
> tracepoint from their module, because it is hard to find those
> local headers.

Why? Modules usually do have their own headers in their sub system.

OK, if a module keeps their headers global (include/linux) then sure
they can keep their tracepoint header in include/trace/events. But I
still think that the module CREATE_TRACE_POINTS code should be kept with
the module code itself (but in a small separate file).

-- Steve


--
To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Stable Commits]     [Linux Stable Kernel]     [Linux Kernel]     [Linux USB Devel]     [Linux Video &Media]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux