Messages in this thread | | | Date | Tue, 13 Mar 2018 15:27:46 +0100 | From | Jiri Olsa <> | Subject | Re: [PATCH 3/3] tracing: Rewrite filter logic to be simpler and faster |
| |
On Tue, Mar 13, 2018 at 10:12:44AM -0400, Steven Rostedt wrote: > On Tue, 13 Mar 2018 11:14:01 +0100 > Jiri Olsa <jolsa@redhat.com> wrote: > > > > Jiri, If you apply the below, does it fix it for you? > > > > yes, the crash is gone and I can set filter ftrace/function, > > Great! > > > but I'm still having some issues put that filter through perf > > > > # perf record -e ftrace:function --filter "ip == 0xffffffffa41e8490" ls > > > > but I might be just missing something.. it's been a while ;-) I'm looking to that > > I have to ask. Did that work with the old code? The ftrace filter was > special in the old code and I tried to simulate it in the new code. > I'm not sure I checked if ip can take an address, but from what the code > looked like, it wouldn't. It looked like it required a name of a > function. Something that gets passed into "set_ftrace_filter" which is > not an address. > > So instead of doing something like: > > perf record -e ftrace:function --filter "ip == 0xffffffff810ccfa0" ls > > You would need to do > > perf record -e ftrace:function --filter "ip == schedule_tail" ls > > because perf doesn't use the filter for the function, it uses the > ftrace_ops->hash tables. If it would simply take the address, we could > just use the trace_events_filter logic, and not make it a special case.
ok, that's what I've been missing.. for some reason I thought we need to pass the address.. everything checks out then
I checked few filters and it seems to work properly to me
thanks, jirka
| |