]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
ftrace: do not show freed records in available_filter_functions
authorSteven Rostedt <rostedt@goodmis.org>
Fri, 15 Aug 2008 02:47:17 +0000 (22:47 -0400)
committerIngo Molnar <mingo@elte.hu>
Tue, 14 Oct 2008 08:35:05 +0000 (10:35 +0200)
Seems that freed records can appear in the available_filter_functions list.
This patch fixes that.

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/trace/ftrace.c

index ea45bb1c0fd6a55150e7bae0b5777206fe07bc0b..8affb6d00ec1e70c40755984447d4897c04f6c89 100644 (file)
@@ -872,15 +872,13 @@ t_next(struct seq_file *m, void *v, loff_t *pos)
                }
        } else {
                rec = &iter->pg->records[iter->idx++];
-               if ((!(iter->flags & FTRACE_ITER_FAILURES) &&
+               if ((rec->flags & FTRACE_FL_FREE) ||
+
+                   (!(iter->flags & FTRACE_ITER_FAILURES) &&
                     (rec->flags & FTRACE_FL_FAILED)) ||
 
                    ((iter->flags & FTRACE_ITER_FAILURES) &&
-                    (!(rec->flags & FTRACE_FL_FAILED) ||
-                     (rec->flags & FTRACE_FL_FREE))) ||
-
-                   ((iter->flags & FTRACE_ITER_FILTER) &&
-                    !(rec->flags & FTRACE_FL_FILTER)) ||
+                    !(rec->flags & FTRACE_FL_FAILED)) ||
 
                    ((iter->flags & FTRACE_ITER_NOTRACE) &&
                     !(rec->flags & FTRACE_FL_NOTRACE))) {