lkml.org 
[lkml]   [2012]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCHv7 0/7] ftrace, perf: Adding support to use function trace
    Date
    hi,
    here's another version of perf support for function trace
    with filter.

    attached patches:
    1/7 ftrace: Change filter/notrace set functions to return exit code
    2/7 ftrace: Add enable/disable ftrace_ops control interface
    3/7 ftrace, perf: Add open/close tracepoint perf registration actions
    4/7 ftrace, perf: Add add/del tracepoint perf registration actions
    5/7 ftrace, perf: Add support to use function tracepoint in perf
    6/7 ftrace, perf: Distinguish ftrace function event field type
    7/7 ftrace, perf: Add filter support for function trace event

    v7 changes:
    2/7 - using int instead of atomic_t for ftrace_ops::disable
    - using this_cpu_ptr to touch ftrace_ops::disable
    - renamed ftrace_ops:disable API
    void ftrace_function_local_enable(struct ftrace_ops *ops)
    void ftrace_function_local_disable(struct ftrace_ops *ops)
    int ftrace_function_local_disabled(struct ftrace_ops *ops)

    v6 changes:
    2/7 - added comments to FTRACE_OPS_FL_* bits enum
    5/7 - added more info to the change log regarding ftrace_ops enable/disable
    7/7 - rebased to the latest filter changes

    v5 changes:
    7/7 - fixed to properly support ',' in filter expressions

    v4 changes:
    2/7 - FL_GLOBAL_CONTROL changed to FL_GLOBAL_CONTROL_MASK
    - changed WARN_ON_ONCE() to include the !preempt_count()
    - changed this_cpu_ptr to per_cpu_ptr

    ommited Fix possible NULL dereferencing in __ftrace_hash_rec_update
    (2/8 in v3)

    v3 changes:
    3/8 - renamed __add/remove_ftrace_ops
    - fixed preemtp_enable/recursion_clear order in ftrace_ops_control_func
    - renamed/commented API functions - enable/disable_ftrace_function

    ommited graph tracer workarounf patch 10/10

    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,
    jirka
    ---
    include/linux/ftrace.h | 70 ++++++++++++-
    include/linux/ftrace_event.h | 9 +-
    include/linux/perf_event.h | 3 +
    kernel/trace/ftrace.c | 132 ++++++++++++++++++++--
    kernel/trace/trace.h | 11 ++-
    kernel/trace/trace_event_perf.c | 212 +++++++++++++++++++++++++++++-------
    kernel/trace/trace_events.c | 12 ++-
    kernel/trace/trace_events_filter.c | 172 +++++++++++++++++++++++++++--
    kernel/trace/trace_export.c | 53 ++++++++-
    kernel/trace/trace_kprobe.c | 8 +-
    kernel/trace/trace_syscalls.c | 18 +++-
    11 files changed, 616 insertions(+), 84 deletions(-)


    \
     
     \ /
      Last update: 2012-01-28 19:47    [W:2.049 / U:0.120 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site