aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLi Zefan2013-02-21 10:33:33 +0800
committerSteven Rostedt2013-03-15 00:34:51 -0400
commit7e4f44b153e1ec07bb64c1c1671cdf492465bbf3 (patch)
tree7477c5f2e6e904391204ac5899bb32f59fb083bc
parentf71130de5c7fba92faf3901784714e37a234c08f (diff)
tracing: Annotate event field-defining functions with __init
Those functions are called either during kernel boot or module init. Before: $ dmesg | grep 'Freeing unused kernel memory' Freeing unused kernel memory: 1208k freed Freeing unused kernel memory: 1360k freed Freeing unused kernel memory: 1960k freed After: $ dmesg | grep 'Freeing unused kernel memory' Freeing unused kernel memory: 1236k freed Freeing unused kernel memory: 1388k freed Freeing unused kernel memory: 1960k freed Link: http://lkml.kernel.org/r/5125877D.5000201@huawei.com Signed-off-by: Li Zefan <lizefan@huawei.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r--include/trace/ftrace.h2
-rw-r--r--kernel/trace/trace_export.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/include/trace/ftrace.h b/include/trace/ftrace.h
index 17a77fcac2a2..a536f66f84c6 100644
--- a/include/trace/ftrace.h
+++ b/include/trace/ftrace.h
@@ -324,7 +324,7 @@ static struct trace_event_functions ftrace_event_type_funcs_##call = { \
#undef DECLARE_EVENT_CLASS
#define DECLARE_EVENT_CLASS(call, proto, args, tstruct, func, print) \
-static int notrace \
+static int notrace __init \
ftrace_define_fields_##call(struct ftrace_event_call *event_call) \
{ \
struct ftrace_raw_##call field; \
diff --git a/kernel/trace/trace_export.c b/kernel/trace/trace_export.c
index e039906b037d..4f6a91c1370c 100644
--- a/kernel/trace/trace_export.c
+++ b/kernel/trace/trace_export.c
@@ -129,7 +129,7 @@ static void __always_unused ____ftrace_check_##name(void) \
#undef FTRACE_ENTRY
#define FTRACE_ENTRY(name, struct_name, id, tstruct, print, filter) \
-int \
+static int __init \
ftrace_define_fields_##name(struct ftrace_event_call *event_call) \
{ \
struct struct_name field; \