Messages in this thread | | | Date | Mon, 19 Dec 2011 14:40:24 +0100 | From | Jiri Olsa <> | Subject | Re: [RFCv2] ftrace, perf: Adding support to use function trace |
| |
hi, any feedback?
thanks, jirka
On Mon, Dec 05, 2011 at 06:22:46PM +0100, Jiri Olsa wrote: > hi, > here's another version of perf support for function trace > with filter. The changeset is working and hopefully is not > introducing more bugs.. ;) still testing though.. > > It's still marked RFC since I'm not sure there's better way to go > with patches 2 and 10. Also not sure if the condition fixed by > patch 7 was not intentional. The rest is fixed/updated version > of the v1 changes. > > attached patches: > 01/10 ftrace: Fix possible NULL dereferencing in __ftrace_hash_rec_update > 02/10 ftrace: Change mcount call replacement logic > 03/10 ftrace: Add enable/disable ftrace_ops control interface > 04/10 ftrace, perf: Add open/close tracepoint perf registration actions > 05/10 ftrace, perf: Add add/del tracepoint perf registration actions > 06/10 ftrace, perf: Add support to use function tracepoint in perf > 07/10 ftrace: Change filter/notrace set functions to return exit code > 08/10 ftrace, perf: Distinguish ftrace function event field type > 09/10 ftrace, perf: Add filter support for function trace event > 10/10 ftrace, graph: Add global_ops filter callback for graph tracing > > v2 changes: > 01/10 - keeping the old fix instead of adding hash_has_contents func > I'll send separating patchset for this > 02/10 - using different way to avoid the issue (3/9 in v1) > 03/10 - using the way proposed by Steven for controling ftrace_ops > (4/9 in v1) > 06/10 - added check ensuring the ftrace:function event could be used by > root only (7/9 in v1) > 08/10 - added more description (8/9 in v1) > 09/10 - changed '&&' operator to '||' which seems more suitable > in this case (9/9 in v1) > > thanks for comments, > jirka > --- > include/linux/ftrace.h | 18 +++- > include/linux/ftrace_event.h | 9 +- > include/linux/perf_event.h | 3 + > kernel/trace/ftrace.c | 202 +++++++++++++++++++++++++++++------ > kernel/trace/trace.h | 11 ++- > kernel/trace/trace_event_perf.c | 212 +++++++++++++++++++++++++++++------- > kernel/trace/trace_events.c | 12 ++- > kernel/trace/trace_events_filter.c | 116 ++++++++++++++++++- > kernel/trace/trace_export.c | 53 ++++++++- > kernel/trace/trace_kprobe.c | 8 +- > kernel/trace/trace_syscalls.c | 18 +++- > 11 files changed, 562 insertions(+), 100 deletions(-)
| |