diff options
author | 2017-09-06 08:40:41 -0400 | |
---|---|---|
committer | 2017-10-05 23:10:42 -0400 | |
commit | 6171a0310a06a7a0cb83713fa7068bdd4192de19 (patch) | |
tree | 06998a71d256fe4519c51e089d92dd9e3d40aca3 /include/linux/ftrace.h | |
parent | ftrace: Add freeing algorithm to free ftrace_mod_maps (diff) | |
download | linux-6171a0310a06a7a0cb83713fa7068bdd4192de19.tar.gz linux-6171a0310a06a7a0cb83713fa7068bdd4192de19.tar.bz2 linux-6171a0310a06a7a0cb83713fa7068bdd4192de19.zip |
ftrace/kallsyms: Have /proc/kallsyms show saved mod init functions
If a module is loaded while tracing is enabled, then there's a possibility
that the module init functions were traced. These functions have their name
and address stored by ftrace such that it can translate the function address
that is written into the buffer into a human readable function name.
As userspace tools may be doing the same, they need a way to map function
names to their address as well. This is done through reading /proc/kallsyms.
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'include/linux/ftrace.h')
-rw-r--r-- | include/linux/ftrace.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h index 202b40784c4e..346f8294e40a 100644 --- a/include/linux/ftrace.h +++ b/include/linux/ftrace.h @@ -56,6 +56,9 @@ struct ftrace_hash; const char * ftrace_mod_address_lookup(unsigned long addr, unsigned long *size, unsigned long *off, char **modname, char *sym); +int ftrace_mod_get_kallsym(unsigned int symnum, unsigned long *value, + char *type, char *name, + char *module_name, int *exported); #else static inline const char * ftrace_mod_address_lookup(unsigned long addr, unsigned long *size, @@ -63,6 +66,12 @@ ftrace_mod_address_lookup(unsigned long addr, unsigned long *size, { return NULL; } +static inline int ftrace_mod_get_kallsym(unsigned int symnum, unsigned long *value, + char *type, char *name, + char *module_name, int *exported) +{ + return -1; +} #endif |