• Steven Rostedt's avatar
    tracing: Move print functions into event class · 80decc70
    Steven Rostedt authored
    Currently, every event has its own trace_event structure. This is
    fine since the structure is needed anyway. But the print function
    structure (trace_event_functions) is now separate. Since the output
    of the trace event is done by the class (with the exception of events
    defined by DEFINE_EVENT_PRINT), it makes sense to have the class
    define the print functions that all events in the class can use.
    
    This makes a bigger deal with the syscall events since all syscall events
    use the same class. The savings here is another 30K.
    
       text	   data	    bss	    dec	    hex	filename
    4913961	1088356	 861512	6863829	 68bbd5	vmlinux.orig
    4900382	1048964	 861512	6810858	 67ecea	vmlinux.init
    4900446	1049028	 861512	6810986	 67ed6a	vmlinux.preprint
    4895024	1023812	 861512	6780348	 6775bc	vmlinux.print
    
    To accomplish this, and to let the class know what event is being
    printed, the event structure is embedded in the ftrace_event_call
    structure. This should not be an issues since the event structure
    was created for each event anyway.
    Acked-by: default avatarMathieu Desnoyers <mathieu.desnoyers@efficios.com>
    Acked-by: default avatarMasami Hiramatsu <mhiramat@redhat.com>
    Acked-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    80decc70
trace_events.c 33.3 KB