diff options
author | Li Zefan <lizf@cn.fujitsu.com> | 2009-08-31 04:49:41 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-08-31 04:58:08 -0400 |
commit | 8e254c1d183f0225ad21f9049641529e56cce4da (patch) | |
tree | 5b559726a38b60c6bc92b3c8667c676db1038701 /kernel/trace/trace_export.c | |
parent | 73222acf966792c7fda219724af963339be32e62 (diff) |
tracing/filters: Defer pred allocation
init_preds() allocates about 5392 bytes of memory (on x86_32) for
a TRACE_EVENT. With my config, at system boot total memory occupied
is:
5392 * (642 + 15) == 3459KB
642 == cat available_events | wc -l
15 == number of dirs in events/ftrace
That's quite a lot, so we'd better defer memory allocation util
it's needed, that's when filter is used.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Tom Zanussi <tzanussi@gmail.com>
Cc: Masami Hiramatsu <mhiramat@redhat.com>
LKML-Reference: <4A9B8EA5.6020700@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/trace/trace_export.c')
-rw-r--r-- | kernel/trace/trace_export.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/kernel/trace/trace_export.c b/kernel/trace/trace_export.c index 029a91f42287..df1bf6e48bb9 100644 --- a/kernel/trace/trace_export.c +++ b/kernel/trace/trace_export.c | |||
@@ -135,7 +135,6 @@ __attribute__((section("_ftrace_events"))) event_##call = { \ | |||
135 | static int ftrace_raw_init_event_##call(void) \ | 135 | static int ftrace_raw_init_event_##call(void) \ |
136 | { \ | 136 | { \ |
137 | INIT_LIST_HEAD(&event_##call.fields); \ | 137 | INIT_LIST_HEAD(&event_##call.fields); \ |
138 | init_preds(&event_##call); \ | ||
139 | return 0; \ | 138 | return 0; \ |
140 | } \ | 139 | } \ |
141 | 140 | ||