aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/ftrace.h
diff options
context:
space:
mode:
authorLai Jiangshan <laijs@cn.fujitsu.com>2009-03-24 01:38:06 -0400
committerIngo Molnar <mingo@elte.hu>2009-03-24 11:43:12 -0400
commitee000b7f9fe429d2470c674ccec8d344f6789e0d (patch)
tree35b480a5e5fb90d5a414d942bcb541e7887334d6 /include/linux/ftrace.h
parentcc59c9e8d0165c632fd056c4a23e36f917507fb4 (diff)
tracing: use union for multi-usages field
Impact: cleanup struct dyn_ftrace::ip has different usages in his lifecycle, we use union for it. And also for struct dyn_ftrace::flags. Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com> Cc: Steven Rostedt <srostedt@redhat.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> LKML-Reference: <49C871BE.3080405@cn.fujitsu.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/ftrace.h')
-rw-r--r--include/linux/ftrace.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
index 1141248c84ee..015a3d22cf74 100644
--- a/include/linux/ftrace.h
+++ b/include/linux/ftrace.h
@@ -145,9 +145,15 @@ enum {
145}; 145};
146 146
147struct dyn_ftrace { 147struct dyn_ftrace {
148 unsigned long ip; /* address of mcount call-site */ 148 union {
149 unsigned long flags; 149 unsigned long ip; /* address of mcount call-site */
150 struct dyn_arch_ftrace arch; 150 struct dyn_ftrace *freelist;
151 };
152 union {
153 unsigned long flags;
154 struct dyn_ftrace *newlist;
155 };
156 struct dyn_arch_ftrace arch;
151}; 157};
152 158
153int ftrace_force_update(void); 159int ftrace_force_update(void);