diff options
Diffstat (limited to 'include/linux/ftrace.h')
-rw-r--r-- | include/linux/ftrace.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h index f0a0ecc63b5c..13918c4400ad 100644 --- a/include/linux/ftrace.h +++ b/include/linux/ftrace.h | |||
@@ -106,6 +106,24 @@ struct ftrace_func_command { | |||
106 | /* asm/ftrace.h must be defined for archs supporting dynamic ftrace */ | 106 | /* asm/ftrace.h must be defined for archs supporting dynamic ftrace */ |
107 | #include <asm/ftrace.h> | 107 | #include <asm/ftrace.h> |
108 | 108 | ||
109 | struct ftrace_hook_ops { | ||
110 | void (*func)(unsigned long ip, | ||
111 | unsigned long parent_ip, | ||
112 | void **data); | ||
113 | int (*callback)(unsigned long ip, void **data); | ||
114 | void (*free)(void **data); | ||
115 | }; | ||
116 | |||
117 | extern int | ||
118 | register_ftrace_function_hook(char *glob, struct ftrace_hook_ops *ops, | ||
119 | void *data); | ||
120 | extern void | ||
121 | unregister_ftrace_function_hook(char *glob, struct ftrace_hook_ops *ops, | ||
122 | void *data); | ||
123 | extern void | ||
124 | unregister_ftrace_function_hook_func(char *glob, struct ftrace_hook_ops *ops); | ||
125 | extern void unregister_ftrace_function_hook_all(char *glob); | ||
126 | |||
109 | enum { | 127 | enum { |
110 | FTRACE_FL_FREE = (1 << 0), | 128 | FTRACE_FL_FREE = (1 << 0), |
111 | FTRACE_FL_FAILED = (1 << 1), | 129 | FTRACE_FL_FAILED = (1 << 1), |