diff options
author | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2019-11-08 13:12:57 -0500 |
---|---|---|
committer | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2019-11-13 09:36:49 -0500 |
commit | a3ad1a7e39689005cb04a4f2adb82f9d55b4724f (patch) | |
tree | 64deafb73e244d233836735dd2fa6a3c41462cc6 /include/linux/ftrace.h | |
parent | 562955fe6a558b9ef98ad87c470314946338cb2f (diff) | |
download | linux-stable-a3ad1a7e39689005cb04a4f2adb82f9d55b4724f.tar.gz linux-stable-a3ad1a7e39689005cb04a4f2adb82f9d55b4724f.tar.bz2 linux-stable-a3ad1a7e39689005cb04a4f2adb82f9d55b4724f.zip |
ftrace/x86: Add a counter to test function_graph with direct
As testing for direct calls from the function graph tracer adds a little
overhead (which is a lot when tracing every function), add a counter that
can be used to test if function_graph tracer needs to test for a direct
caller or not.
It would have been nicer if we could use a static branch, but the static
branch logic fails when used within the function graph tracer trampoline.
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'include/linux/ftrace.h')
-rw-r--r-- | include/linux/ftrace.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h index 2bc7bd6b8387..55647e185141 100644 --- a/include/linux/ftrace.h +++ b/include/linux/ftrace.h @@ -247,10 +247,12 @@ static inline void ftrace_free_mem(struct module *mod, void *start, void *end) { #endif /* CONFIG_FUNCTION_TRACER */ #ifdef CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS +extern int ftrace_direct_func_count; int register_ftrace_direct(unsigned long ip, unsigned long addr); int unregister_ftrace_direct(unsigned long ip, unsigned long addr); struct ftrace_direct_func *ftrace_find_direct_func(unsigned long addr); #else +# define ftrace_direct_func_count 0 static inline int register_ftrace_direct(unsigned long ip, unsigned long addr) { return -ENODEV; |