Steven Rostedt wrote: > On Wed, 2009-12-02 at 23:00 -0500, Masami Hiramatsu wrote: >> Mathieu Desnoyers wrote: >>> In addition, I wonder if we should rename "CREATE_TRACE_POINTS" to >>> something more suitable while we are here ? Basically, it will affect >>> all TRACE_CLASS/TRACE_CLASS_EVENT/TRACE_EVENT from headers included >>> after it's defined. >> >> Agreed, CREATE_TRACE_POINTS is a bit irritating thing :-( > > Well, I think the name could use some help, but I don't think it is the > name that irritates you. Yes :-) >> For example, if we call tracepoints defined in same-header on >> several different files, we need to check other people have >> already defined CREATE_TRACE_POINTS on another file, because >> CREATE_TRACE_POINTS must be used once for each header... >> >> So, how about introducing a c file which is only for defining >> tracepoints for kernel parts ? or defining tracepoints in >> kernel at the beginning of kernel/tracepoint.c ? (and don't >> touch tracepoints in modules) > > I think the proper fix is to have each tracepoint header have its own C > file. I believe Christoph does this with xfs. > > 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). >> 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. Thank you, -- Masami Hiramatsu Software Engineer Hitachi Computer Products (America), Inc. Software Solutions Division e-mail: mhiramat@xxxxxxxxxx -- 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