diff options
Diffstat (limited to 'include/trace')
-rw-r--r-- | include/trace/ftrace.h | 11 | ||||
-rw-r--r-- | include/trace/syscall.h | 4 |
2 files changed, 8 insertions, 7 deletions
diff --git a/include/trace/ftrace.h b/include/trace/ftrace.h index 26d132418f9..c7e3bcd5d52 100644 --- a/include/trace/ftrace.h +++ b/include/trace/ftrace.h @@ -430,6 +430,9 @@ static inline notrace int ftrace_get_offsets_##call( \ * * static struct ftrace_event_class __used event_class_<template> = { * .system = "<system>", + * .define_fields = ftrace_define_fields_<call>, + * .fields = LIST_HEAD_INIT(event_class_##call.fields), \ + * .probe = ftrace_raw_event_##call, \ * }; * * static struct ftrace_event_call __used @@ -438,10 +441,8 @@ static inline notrace int ftrace_get_offsets_##call( \ * .name = "<call>", * .class = event_class_<template>, * .raw_init = trace_event_raw_init, - * .regfunc = ftrace_raw_reg_event_<call>, - * .unregfunc = ftrace_raw_unreg_event_<call>, + * .event = &ftrace_event_type_<call>, * .print_fmt = print_fmt_<call>, - * .define_fields = ftrace_define_fields_<call>, * }; * */ @@ -563,6 +564,8 @@ _TRACE_PERF_PROTO(call, PARAMS(proto)); \ static const char print_fmt_##call[] = print; \ static struct ftrace_event_class __used event_class_##call = { \ .system = __stringify(TRACE_SYSTEM), \ + .define_fields = ftrace_define_fields_##call, \ + .fields = LIST_HEAD_INIT(event_class_##call.fields),\ .probe = ftrace_raw_event_##call, \ _TRACE_PERF_INIT(call) \ }; @@ -578,7 +581,6 @@ __attribute__((section("_ftrace_events"))) event_##call = { \ .event = &ftrace_event_type_##call, \ .raw_init = trace_event_raw_init, \ .print_fmt = print_fmt_##template, \ - .define_fields = ftrace_define_fields_##template, \ }; #undef DEFINE_EVENT_PRINT @@ -594,7 +596,6 @@ __attribute__((section("_ftrace_events"))) event_##call = { \ .event = &ftrace_event_type_##call, \ .raw_init = trace_event_raw_init, \ .print_fmt = print_fmt_##call, \ - .define_fields = ftrace_define_fields_##template, \ } #include TRACE_INCLUDE(TRACE_INCLUDE_FILE) diff --git a/include/trace/syscall.h b/include/trace/syscall.h index e5e5f48dbfb..39647743cd9 100644 --- a/include/trace/syscall.h +++ b/include/trace/syscall.h @@ -25,6 +25,8 @@ struct syscall_metadata { int nb_args; const char **types; const char **args; + struct list_head enter_fields; + struct list_head exit_fields; struct ftrace_event_call *enter_event; struct ftrace_event_call *exit_event; @@ -34,8 +36,6 @@ struct syscall_metadata { extern unsigned long arch_syscall_addr(int nr); extern int init_syscall_trace(struct ftrace_event_call *call); -extern int syscall_enter_define_fields(struct ftrace_event_call *call); -extern int syscall_exit_define_fields(struct ftrace_event_call *call); extern int reg_event_syscall_enter(struct ftrace_event_call *call); extern void unreg_event_syscall_enter(struct ftrace_event_call *call); extern int reg_event_syscall_exit(struct ftrace_event_call *call); |