Merge branch 'tip/perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent

+22 -21
+10
include/trace/events/module.h
··· 1 #undef TRACE_SYSTEM 2 #define TRACE_SYSTEM module 3 4 #if !defined(_TRACE_MODULE_H) || defined(TRACE_HEADER_MULTI_READ) 5 #define _TRACE_MODULE_H
··· 1 + /* 2 + * Because linux/module.h has tracepoints in the header, and ftrace.h 3 + * eventually includes this file, define_trace.h includes linux/module.h 4 + * But we do not want the module.h to override the TRACE_SYSTEM macro 5 + * variable that define_trace.h is processing, so we only set it 6 + * when module events are being processed, which would happen when 7 + * CREATE_TRACE_POINTS is defined. 8 + */ 9 + #ifdef CREATE_TRACE_POINTS 10 #undef TRACE_SYSTEM 11 #define TRACE_SYSTEM module 12 + #endif 13 14 #if !defined(_TRACE_MODULE_H) || defined(TRACE_HEADER_MULTI_READ) 15 #define _TRACE_MODULE_H
+12 -21
kernel/trace/trace_syscalls.c
··· 23 static int syscall_enter_define_fields(struct ftrace_event_call *call); 24 static int syscall_exit_define_fields(struct ftrace_event_call *call); 25 26 - /* All syscall exit events have the same fields */ 27 - static LIST_HEAD(syscall_exit_fields); 28 - 29 static struct list_head * 30 syscall_get_enter_fields(struct ftrace_event_call *call) 31 { ··· 31 return &entry->enter_fields; 32 } 33 34 - static struct list_head * 35 - syscall_get_exit_fields(struct ftrace_event_call *call) 36 - { 37 - return &syscall_exit_fields; 38 - } 39 - 40 struct trace_event_functions enter_syscall_print_funcs = { 41 - .trace = print_syscall_enter, 42 }; 43 44 struct trace_event_functions exit_syscall_print_funcs = { 45 - .trace = print_syscall_exit, 46 }; 47 48 struct ftrace_event_class event_class_syscall_enter = { 49 - .system = "syscalls", 50 - .reg = syscall_enter_register, 51 - .define_fields = syscall_enter_define_fields, 52 - .get_fields = syscall_get_enter_fields, 53 - .raw_init = init_syscall_trace, 54 }; 55 56 struct ftrace_event_class event_class_syscall_exit = { 57 - .system = "syscalls", 58 - .reg = syscall_exit_register, 59 - .define_fields = syscall_exit_define_fields, 60 - .get_fields = syscall_get_exit_fields, 61 - .raw_init = init_syscall_trace, 62 }; 63 64 extern unsigned long __start_syscalls_metadata[];
··· 23 static int syscall_enter_define_fields(struct ftrace_event_call *call); 24 static int syscall_exit_define_fields(struct ftrace_event_call *call); 25 26 static struct list_head * 27 syscall_get_enter_fields(struct ftrace_event_call *call) 28 { ··· 34 return &entry->enter_fields; 35 } 36 37 struct trace_event_functions enter_syscall_print_funcs = { 38 + .trace = print_syscall_enter, 39 }; 40 41 struct trace_event_functions exit_syscall_print_funcs = { 42 + .trace = print_syscall_exit, 43 }; 44 45 struct ftrace_event_class event_class_syscall_enter = { 46 + .system = "syscalls", 47 + .reg = syscall_enter_register, 48 + .define_fields = syscall_enter_define_fields, 49 + .get_fields = syscall_get_enter_fields, 50 + .raw_init = init_syscall_trace, 51 }; 52 53 struct ftrace_event_class event_class_syscall_exit = { 54 + .system = "syscalls", 55 + .reg = syscall_exit_register, 56 + .define_fields = syscall_exit_define_fields, 57 + .fields = LIST_HEAD_INIT(event_class_syscall_exit.fields), 58 + .raw_init = init_syscall_trace, 59 }; 60 61 extern unsigned long __start_syscalls_metadata[];