From: Al Viro <v...@zeniv.linux.org.uk>

For patterns starting with '*' we need to match against 'search', not
'glob'.

Signed-off-by: Al Viro <v...@zeniv.linux.org.uk>
---
 kernel/trace/ftrace.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
index 224e768..67ecd14 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -3761,12 +3761,10 @@ __unregister_ftrace_function_probe(char *glob, struct 
ftrace_probe_ops *ops,
        char str[KSYM_SYMBOL_LEN];
        int type = MATCH_FULL;
        int i, len = 0;
-       char *search;
+       char *search = NULL;
        int ret;
 
-       if (glob && (strcmp(glob, "*") == 0 || !strlen(glob)))
-               glob = NULL;
-       else if (glob) {
+       if (glob && *glob && strcmp(glob, "*") != 0) {
                int not;
 
                type = filter_parse_regex(glob, strlen(glob), &search, &not);
@@ -3799,10 +3797,10 @@ __unregister_ftrace_function_probe(char *glob, struct 
ftrace_probe_ops *ops,
                                continue;
 
                        /* do this last, since it is the most expensive */
-                       if (glob) {
+                       if (search) {
                                kallsyms_lookup(entry->ip, NULL, NULL,
                                                NULL, str);
-                               if (!ftrace_match(str, glob, len, type))
+                               if (!ftrace_match(str, search, len, type))
                                        continue;
                        }
 
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to