lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1328643899-8361-1-git-send-email-jolsa@redhat.com>
Date:	Tue,  7 Feb 2012 20:44:51 +0100
From:	Jiri Olsa <jolsa@...hat.com>
To:	rostedt@...dmis.org, fweisbec@...il.com, mingo@...hat.com,
	paulus@...ba.org, acme@...stprotocols.net, a.p.zijlstra@...llo.nl
Cc:	linux-kernel@...r.kernel.org, aarapov@...hat.com
Subject: [PATCHv8 0/8] ftrace, perf: Adding support to use function trace

hi,
here's another version of perf support for function trace
with filter. 

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

v8 changes:
  1/8 - acked
  2/8 - acked
  3/8 - acked
  4/8 - acked
  5/8 - new patch - added FTRACE_ENTRY_REG macro
  6/8 - using FTRACE_ENTRY_REG macro to define ftrace event
  7/8 - adding filter parameter to FTRACE_ENTRY macro
  8/8 - using only walk_pred_tree to check the filter
        instead using different special filter_ops,

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             |   71 ++++++++++++-
 include/linux/ftrace_event.h       |    9 ++-
 include/linux/perf_event.h         |    3 +
 kernel/trace/ftrace.c              |  132 +++++++++++++++++++++---
 kernel/trace/trace.h               |   34 ++++--
 kernel/trace/trace_entries.h       |   54 +++++++---
 kernel/trace/trace_event_perf.c    |  206 ++++++++++++++++++++++++++++--------
 kernel/trace/trace_events.c        |   12 ++-
 kernel/trace/trace_events_filter.c |  160 +++++++++++++++++++++++++++-
 kernel/trace/trace_export.c        |   64 ++++++++----
 kernel/trace/trace_kprobe.c        |    8 ++-
 kernel/trace/trace_syscalls.c      |   18 +++-
 12 files changed, 654 insertions(+), 117 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ