linux/tools/perf/util
Stephane Eranian f0c55bcf4a perf: make perf stat print user provided full event names
This patch changes the way perf stat prints event names at the end of a
run. Until now, it was trying to reconstruct the event name from its
encoding. The problem is that it would only print generic events without
their modifiers (u, k, pp).

This patch saves the event name as passed by the user in the evsel
struct and uses it to print the final event name.

This would also work in case perf is linked with a library (such as
libpfm4) which provides full PMU event tables.

$ perf stat -e cycles:u,cycles:k date
Wed Feb 16 14:58:52 CET 2011

 Performance counter stats for 'date':

            568600 cycles:u
           2779715 cycles:k

        0.001908182  seconds time elapsed

Cc: Arun Sharma <arun@sharma-home.net>
Cc: David S. Miller <davem@davemloft.net>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Robert Richter <robert.richter@amd.com>
Cc: Stephane Eranian <eranian@gmail.com>
LPU-Reference: <4d5bdc64.98a1df0a.7aa3.06c2@mx.google.com>
Signed-off-by: Stephane Eranian <eranian@google.com>
[ committer note: Fixed a merge problem with 023695d "Add cgroup support" ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2011-02-17 10:29:19 -02:00
..
include perf evsel: Introduce perf_evlist 2011-01-22 19:56:28 -02:00
scripting-engines perf tool: Fix gcc 4.6.0 issues 2011-02-07 12:41:41 -02:00
ui perf annotate browser: Use the percent color for the whole line 2011-02-16 14:47:55 -02:00
abspath.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
alias.c perf_counter tools: Add more warnings and fix/annotate them 2009-07-01 12:49:48 +02:00
annotate.c perf annotate: Check if offset is less than symbol size 2011-02-16 14:47:55 -02:00
annotate.h perf annotate: Fix annotate context lines regression 2011-02-08 15:29:25 -02:00
bitmap.c perf tools: Don't use code surrounded by __KERNEL__ 2010-05-02 12:00:44 -03:00
build-id.c perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
build-id.h perf annotate: Use build-ids to find the right DSO 2010-05-20 12:15:33 -03:00
cache.h perf tools: Don't fallback to setup_pager unconditionally 2011-01-31 18:08:39 -02:00
callchain.c perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
callchain.h perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
cgroup.c perf tool: Add cgroup support 2011-02-16 13:30:48 +01:00
cgroup.h perf tool: Add cgroup support 2011-02-16 13:30:48 +01:00
color.c perf hist: Replace ->print() routines by ->snprintf() equivalents 2010-04-02 16:28:15 -03:00
color.h perf hist: Replace ->print() routines by ->snprintf() equivalents 2010-04-02 16:28:15 -03:00
config.c perf buildid: add perfconfig option to specify buildid cache dir 2010-06-05 09:34:04 -03:00
cpumap.c perf tools: Add missing cpu_map__delete() 2011-01-22 19:56:30 -02:00
cpumap.h perf tools: Add missing cpu_map__delete() 2011-01-22 19:56:30 -02:00
ctype.c perf tools: Move graph_line and graph_dotted_line from top 2009-11-23 21:55:20 +01:00
debug.c perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
debug.h perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
debugfs.c perf trace: Clean up find_debugfs() 2009-12-28 10:36:36 +01:00
debugfs.h perf tools: Mount debugfs automatically 2009-12-28 10:36:36 +01:00
environment.c
event.c Merge remote branch 'acme/perf/urgent' into perf/core 2011-02-11 11:45:54 -02:00
event.h Merge remote branch 'acme/perf/urgent' into perf/core 2011-02-11 11:45:54 -02:00
evlist.c perf evlist: Store pointer to the cpu and thread maps 2011-01-31 12:40:52 -02:00
evlist.h perf evlist: Store pointer to the cpu and thread maps 2011-01-31 12:40:52 -02:00
evsel.c perf: make perf stat print user provided full event names 2011-02-17 10:29:19 -02:00
evsel.h perf: make perf stat print user provided full event names 2011-02-17 10:29:19 -02:00
exec_cmd.c perf tools: remove xstrndup, xmalloc, xzalloc 2010-05-18 23:05:28 -03:00
exec_cmd.h perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
generate-cmdlist.sh
header.c perf tool: Fix gcc 4.6.0 issues 2011-02-07 12:41:41 -02:00
header.h perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
help.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
help.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
hist.c perf annotate: Move locking to struct annotation 2011-02-08 15:03:36 -02:00
hist.h perf annotate: Move locking to struct annotation 2011-02-08 15:03:36 -02:00
hweight.c perf tools: Don't use code surrounded by __KERNEL__ 2010-05-02 12:00:44 -03:00
levenshtein.c
levenshtein.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
map.c perf tools: Fix 64 bit integer format strings 2011-01-22 23:41:57 -02:00
map.h perf probe: Add basic module support 2010-10-21 16:11:44 -02:00
pager.c perf_counter tools: Remove dead code 2009-06-27 06:06:39 +02:00
parse-events.c perf: make perf stat print user provided full event names 2011-02-17 10:29:19 -02:00
parse-events.h perf evsel: Introduce perf_evlist 2011-01-22 19:56:28 -02:00
parse-options.c perf options: Type check all the remaining OPT_ variants 2010-05-17 16:22:41 -03:00
parse-options.h perf options: add OPT_CALLBACK_DEFAULT_NOOPT 2010-12-06 15:33:29 -02:00
path.c perf tools: add test for strlcpy() 2010-08-21 11:22:47 -03:00
PERF-VERSION-GEN perf: Version String fix, for fallback if not from git 2010-07-05 10:42:58 +02:00
probe-event.c perf probe: Show filename which contains target function 2011-02-16 17:04:09 -02:00
probe-event.h perf probe: Add filters support for available functions 2011-01-28 09:20:25 -02:00
probe-finder.c perf probe: Add bitfield member support 2011-02-07 12:48:48 -02:00
probe-finder.h perf tools: Remove hardcoded include paths for elfutils 2010-11-19 16:38:04 -02:00
pstack.c perf newt: Make <- zoom out filters 2010-05-14 20:05:21 -03:00
pstack.h perf ui: Move hists browser to util/ui/browsers/ 2010-08-10 16:11:08 -03:00
python.c perf python: Fix build on 32-bit 2011-01-31 20:56:27 -02:00
quote.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
quote.h perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
run-command.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
run-command.h perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
session.c perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
session.h perf tools: Kill event_t typedef, use 'union perf_event' instead 2011-01-29 16:25:37 -02:00
setup.py perf python: Add cgroup.c to setup.py to get it building again 2011-02-17 10:07:42 -02:00
sigchain.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
sigchain.h perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
sort.c perf hist: Better displaying of unresolved DSOs and symbols 2010-12-06 15:12:34 -02:00
sort.h perf: Keep track of the max depth of a callchain 2010-08-22 20:43:17 +02:00
strbuf.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
strbuf.h perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
strfilter.c perf tools: Add strfilter for general purpose string filter 2011-01-28 09:19:38 -02:00
strfilter.h perf tools: Add strfilter for general purpose string filter 2011-01-28 09:19:38 -02:00
string.c perf tools: Fix lazy wildcard matching 2010-12-21 19:15:42 -02:00
strlist.c perf probe: Fix --del to update current event list 2009-12-15 20:22:01 +01:00
strlist.h perf tools: Add for_each macros for strlist 2009-12-15 20:22:02 +01:00
svghelper.c perf tools: Fix time function double declaration with glibc 2011-01-22 19:53:00 -02:00
svghelper.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
symbol.c perf tool: Fix gcc 4.6.0 issues 2011-02-07 12:41:41 -02:00
symbol.h Merge commit 'v2.6.37-rc8' into perf/core 2011-01-04 08:08:54 +01:00
thread.c perf threads: Move thread_map to separate file 2011-01-24 10:59:00 -02:00
thread.h perf threads: Move thread_map to separate file 2011-01-24 10:59:00 -02:00
thread_map.c perf threads: Move thread_map to separate file 2011-01-24 10:59:00 -02:00
thread_map.h perf threads: Move thread_map to separate file 2011-01-24 10:59:00 -02:00
top.c perf top: Remove superfluous name_len field 2011-02-05 12:26:40 -02:00
top.h perf annotate: Move locking to struct annotation 2011-02-08 15:03:36 -02:00
trace-event-info.c perf tools: Introduce event selectors 2011-01-03 16:39:04 -02:00
trace-event-parse.c perf tool: Fix gcc 4.6.0 issues 2011-02-07 12:41:41 -02:00
trace-event-read.c perf: Use read() instead of lseek() in trace_event_read.c:skip() 2010-05-20 08:37:17 +02:00
trace-event-scripting.c perf trace scripting: Fix extern struct definitions 2010-10-04 12:24:51 -03:00
trace-event.h perf tools: Introduce event selectors 2011-01-03 16:39:04 -02:00
types.h perf tools: Fix 64 bit integer format strings 2011-01-22 23:41:57 -02:00
usage.c perf top: Fall back to cpu-clock-tick hrtimer sampling if no cycle counter available 2009-06-07 17:31:52 +02:00
util.c perf util: Move do_read from session to util 2011-01-03 16:50:55 -02:00
util.h perf util: Move do_read from session to util 2011-01-03 16:50:55 -02:00
values.c perf tools: Fix 64 bit integer format strings 2011-01-22 23:41:57 -02:00
values.h perf tools: Protect header files with a consistent style 2009-09-24 21:27:51 +02:00
wrapper.c perf tools: remove xstrndup, xmalloc, xzalloc 2010-05-18 23:05:28 -03:00
xyarray.c perf tools: Introduce event selectors 2011-01-03 16:39:04 -02:00
xyarray.h perf tools: Introduce event selectors 2011-01-03 16:39:04 -02:00