diff options
author | Abhishek Sagar <sagar.abhishek@gmail.com> | 2008-06-21 14:17:27 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-06-23 16:10:56 -0400 |
commit | 395a59d0f8e86bb39cd700c3d185d30c670bb958 (patch) | |
tree | 1558e635efcede901c5dbe9acd625d475db5b369 /arch/arm/kernel/armksyms.c | |
parent | f34bfb1beef8a17ba3d46b60f8fa19ffedc1ed8d (diff) |
ftrace: store mcount address in rec->ip
Record the address of the mcount call-site. Currently all archs except sparc64
record the address of the instruction following the mcount call-site. Some
general cleanups are entailed. Storing mcount addresses in rec->ip enables
looking them up in the kprobe hash table later on to check if they're kprobe'd.
Signed-off-by: Abhishek Sagar <sagar.abhishek@gmail.com>
Cc: davem@davemloft.net
Cc: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/arm/kernel/armksyms.c')
-rw-r--r-- | arch/arm/kernel/armksyms.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/arm/kernel/armksyms.c b/arch/arm/kernel/armksyms.c index 3b132215cbf8..cc7b246e9652 100644 --- a/arch/arm/kernel/armksyms.c +++ b/arch/arm/kernel/armksyms.c | |||
@@ -18,6 +18,7 @@ | |||
18 | #include <asm/io.h> | 18 | #include <asm/io.h> |
19 | #include <asm/system.h> | 19 | #include <asm/system.h> |
20 | #include <asm/uaccess.h> | 20 | #include <asm/uaccess.h> |
21 | #include <asm/ftrace.h> | ||
21 | 22 | ||
22 | /* | 23 | /* |
23 | * libgcc functions - functions that are used internally by the | 24 | * libgcc functions - functions that are used internally by the |
@@ -48,11 +49,6 @@ extern void __aeabi_ulcmp(void); | |||
48 | extern void fpundefinstr(void); | 49 | extern void fpundefinstr(void); |
49 | extern void fp_enter(void); | 50 | extern void fp_enter(void); |
50 | 51 | ||
51 | #ifdef CONFIG_FTRACE | ||
52 | extern void mcount(void); | ||
53 | EXPORT_SYMBOL(mcount); | ||
54 | #endif | ||
55 | |||
56 | /* | 52 | /* |
57 | * This has a special calling convention; it doesn't | 53 | * This has a special calling convention; it doesn't |
58 | * modify any of the usual registers, except for LR. | 54 | * modify any of the usual registers, except for LR. |
@@ -186,3 +182,7 @@ EXPORT_SYMBOL(_find_next_bit_be); | |||
186 | #endif | 182 | #endif |
187 | 183 | ||
188 | EXPORT_SYMBOL(copy_page); | 184 | EXPORT_SYMBOL(copy_page); |
185 | |||
186 | #ifdef CONFIG_FTRACE | ||
187 | EXPORT_SYMBOL(mcount); | ||
188 | #endif | ||