Skip to content

Commit

Permalink
tracing: Fix set_ftrace_filter probe function display
Browse files Browse the repository at this point in the history
If one or more function probes (like traceon) are enabled,
and there's no other function filter, the first probe
func is skipped (which one depends on the position in the hash).

$ echo sys_open:traceon sys_close:traceon > ./set_ftrace_filter
$ cat set_ftrace_filter
#### all functions enabled ####
sys_close:traceon:unlimited
$

The reason was, that in the case of no other function filter,
the func_pos was not properly updated before calling t_hash_start.

Signed-off-by: Jiri Olsa <jolsa@redhat.com>
LKML-Reference: <1297874134-7008-1-git-send-email-jolsa@redhat.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
  • Loading branch information
Jiri Olsa authored and Steven Rostedt committed Mar 22, 2011
1 parent 8df341c commit 1106b69
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions kernel/trace/ftrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -1467,7 +1467,7 @@ t_next(struct seq_file *m, void *v, loff_t *pos)
return t_hash_next(m, pos);

(*pos)++;
iter->pos = *pos;
iter->pos = iter->func_pos = *pos;

if (iter->flags & FTRACE_ITER_PRINTALL)
return t_hash_start(m, pos);
Expand Down Expand Up @@ -1502,7 +1502,6 @@ t_next(struct seq_file *m, void *v, loff_t *pos)
if (!rec)
return t_hash_start(m, pos);

iter->func_pos = *pos;
iter->func = rec;

return iter;
Expand Down

0 comments on commit 1106b69

Please sign in to comment.