alistair23-linux/tools/perf
Frederic Weisbecker 1b290d670f perf tools: Add support for breakpoint events in perf tools
Add the breakpoint events support with this new sysnopsis:

  mem:addr[:access]

Where addr is a raw addr value in the kernel and access can be
either [r][w][x]

Example to profile tasklist_lock:

	$ grep tasklist_lock /proc/kallsyms
	ffffffff8189c000 D tasklist_lock

	$ perf record -e mem:0xffffffff8189c000:rw -a -f -c 1
	$ perf report

	# Samples: 62
	#
	# Overhead          Command  Shared Object  Symbol
	# ........  ...............  .............  ......
	#
	    29.03%          swapper  [kernel]       [k] _raw_read_trylock
	    29.03%          swapper  [kernel]       [k] _raw_read_unlock
	    19.35%             init  [kernel]       [k] _raw_read_trylock
	    19.35%             init  [kernel]       [k] _raw_read_unlock
	     1.61%         events/0  [kernel]       [k] _raw_read_trylock
	     1.61%         events/0  [kernel]       [k] _raw_read_unlock

Coming soon:

 - Support for symbols in the event definition.

 - Default period to 1 for breakpoint events because these are
   not high frequency events. The same thing is needed for trace
   events.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Prasad <prasad@linux.vnet.ibm.com>
LKML-Reference: <1258987355-8751-4-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Prasad <prasad@linux.vnet.ibm.com>
2009-11-23 18:18:31 +01:00
..
bench perf bench: Improve sched-message.c with more comfortable output 2009-11-10 19:56:46 +01:00
Documentation perf tools: Add support for breakpoint events in perf tools 2009-11-23 18:18:31 +01:00
util perf tools: Add support for breakpoint events in perf tools 2009-11-23 18:18:31 +01:00
.gitignore perf tools: .gitignore += perf*.html 2009-09-24 14:01:22 +02:00
builtin-annotate.c perf symbols: Do lazy symtab loading for the kernel & modules too 2009-11-21 14:11:33 +01:00
builtin-bench.c perf bench: Improve builtin-bench.c for more friendly output 2009-11-10 19:56:44 +01:00
builtin-buildid-list.c perf buildid-list: Always show the DSO name 2009-11-17 07:19:54 +01:00
builtin-help.c perf: Clean up trivial style issues in builtin-help.c 2009-11-03 18:37:29 +01:00
builtin-kmem.c perf kmem: Add --sort hit and --sort frag 2009-11-22 11:21:37 +01:00
builtin-list.c perf list: Fix large list output by using the pager 2009-08-13 09:05:48 +02:00
builtin-probe.c perf/probes: Rename perf probe events group name 2009-11-04 13:02:47 +01:00
builtin-record.c perf record, x86: Print more intelligent error message when sampling fails 2009-11-23 09:40:13 +01:00
builtin-report.c perf report: Do map lookups in resolve_callchain() 2009-11-22 18:54:24 +01:00
builtin-sched.c perf tools: Simplify the symbol priv area mechanism 2009-11-02 16:52:11 +01:00
builtin-stat.c perf stat: Do not print ratio when task-clock event is not counted 2009-11-15 15:25:50 +01:00
builtin-timechart.c perf tools: perf_header__read() shouldn't die() 2009-11-19 18:47:17 +01:00
builtin-top.c perf symbols: Do lazy symtab loading for the kernel & modules too 2009-11-21 14:11:33 +01:00
builtin-trace.c perf tools: Simplify the symbol priv area mechanism 2009-11-02 16:52:11 +01:00
builtin.h perf: Add 'perf kmem' tool 2009-11-20 09:51:41 +01:00
command-list.txt Merge branch 'perf/core' into perf/probes 2009-11-17 10:17:47 +01:00
CREDITS
design.txt perf_event: Add alignment-faults and emulation-faults software events 2009-10-28 16:13:03 +11:00
Makefile perf: Use default compiler mode by default 2009-11-23 07:55:57 +01:00
perf.c perf: Add 'perf kmem' tool 2009-11-20 09:51:41 +01:00
perf.h perf tools: Add ia64 support for tools/perf/ 2009-11-19 06:03:33 +01:00