aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel/trace/ftrace.c18
-rw-r--r--kernel/trace/trace.h3
2 files changed, 3 insertions, 18 deletions
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
index ac47d1845fdb..5448089e6028 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -4061,12 +4061,11 @@ register_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops,
4061 4061
4062enum { 4062enum {
4063 PROBE_TEST_FUNC = 1, 4063 PROBE_TEST_FUNC = 1,
4064 PROBE_TEST_DATA = 2
4065}; 4064};
4066 4065
4067static void 4066static void
4068__unregister_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops, 4067__unregister_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops,
4069 void *data, int flags) 4068 int flags)
4070{ 4069{
4071 struct ftrace_ops_hash old_hash_ops; 4070 struct ftrace_ops_hash old_hash_ops;
4072 struct ftrace_func_entry *rec_entry; 4071 struct ftrace_func_entry *rec_entry;
@@ -4119,9 +4118,6 @@ __unregister_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops,
4119 if ((flags & PROBE_TEST_FUNC) && entry->ops != ops) 4118 if ((flags & PROBE_TEST_FUNC) && entry->ops != ops)
4120 continue; 4119 continue;
4121 4120
4122 if ((flags & PROBE_TEST_DATA) && entry->data != data)
4123 continue;
4124
4125 /* do this last, since it is the most expensive */ 4121 /* do this last, since it is the most expensive */
4126 if (func_g.search) { 4122 if (func_g.search) {
4127 kallsyms_lookup(entry->ip, NULL, NULL, 4123 kallsyms_lookup(entry->ip, NULL, NULL,
@@ -4167,22 +4163,14 @@ __unregister_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops,
4167} 4163}
4168 4164
4169void 4165void
4170unregister_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops,
4171 void *data)
4172{
4173 __unregister_ftrace_function_probe(glob, ops, data,
4174 PROBE_TEST_FUNC | PROBE_TEST_DATA);
4175}
4176
4177void
4178unregister_ftrace_function_probe_func(char *glob, struct ftrace_probe_ops *ops) 4166unregister_ftrace_function_probe_func(char *glob, struct ftrace_probe_ops *ops)
4179{ 4167{
4180 __unregister_ftrace_function_probe(glob, ops, NULL, PROBE_TEST_FUNC); 4168 __unregister_ftrace_function_probe(glob, ops, PROBE_TEST_FUNC);
4181} 4169}
4182 4170
4183void unregister_ftrace_function_probe_all(char *glob) 4171void unregister_ftrace_function_probe_all(char *glob)
4184{ 4172{
4185 __unregister_ftrace_function_probe(glob, NULL, NULL, 0); 4173 __unregister_ftrace_function_probe(glob, NULL, 0);
4186} 4174}
4187 4175
4188static LIST_HEAD(ftrace_commands); 4176static LIST_HEAD(ftrace_commands);
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
index dbbdee21bcc4..507a62e9192e 100644
--- a/kernel/trace/trace.h
+++ b/kernel/trace/trace.h
@@ -964,9 +964,6 @@ extern int
964register_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops, 964register_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops,
965 void *data); 965 void *data);
966extern void 966extern void
967unregister_ftrace_function_probe(char *glob, struct ftrace_probe_ops *ops,
968 void *data);
969extern void
970unregister_ftrace_function_probe_func(char *glob, struct ftrace_probe_ops *ops); 967unregister_ftrace_function_probe_func(char *glob, struct ftrace_probe_ops *ops);
971extern void unregister_ftrace_function_probe_all(char *glob); 968extern void unregister_ftrace_function_probe_all(char *glob);
972 969