tracing: Add DEFINE_EVENT_FN() macro
authorSteven Rostedt <rostedt@goodmis.org>
Thu, 20 Jun 2013 15:44:44 +0000 (11:44 -0400)
committerH. Peter Anvin <hpa@linux.intel.com>
Fri, 21 Jun 2013 05:24:32 +0000 (22:24 -0700)
commitf5abaa1bfc3dbf26d19d3513f39279ca369f8d65
treeb3b5151c021486b65b0f01f5f4d1cfb94b82d1f9
parent7d132055814ef17a6c7b69f342244c410a5e000f
tracing: Add DEFINE_EVENT_FN() macro

Each TRACE_EVENT() adds several helper functions. If two or more trace events
share the same structure and print format, they can also share most of these
helper functions and save a lot of space from duplicate code. This is why the
DECLARE_EVENT_CLASS() and DEFINE_EVENT() were created.

Some events require a trigger to be called at registering and unregistering of
the event and to do so they use TRACE_EVENT_FN().

If multiple events require a trigger, they currently have no choice but to use
TRACE_EVENT_FN() as there's no DEFINE_EVENT_FN() available. This unfortunately
causes a lot of wasted duplicate code created.

By adding a DEFINE_EVENT_FN(), these events can still use a
DECLARE_EVENT_CLASS() and then define their own triggers.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/51C3236C.8030508@hds.com
Signed-off-by: Seiji Aguchi <seiji.aguchi@hds.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
include/linux/tracepoint.h
include/trace/define_trace.h
include/trace/ftrace.h