linux/tools/perf/util
Arnaldo Carvalho de Melo fcf65bf149 perf evsel: Cache associated event_format
We already lookup the associated event_format when reading the perf.data
header, so that we can cache the tracepoint name in evsel->name, so do
it a little further and save the event_format itself, so that we can
avoid relookups in tools that need to access it.

Change the tools to take the most obvious advantage, when they were
using pevent_find_event directly. More work is needed for further
removing the need of a pointer to pevent, such as when asking for event
field values ("common_pid" and the other common fields and per
event_format fields).

This is something that was planned but only got actually done when
Andrey Wagin needed to do this lookup at perf_tool->sample() time, when
we don't have access to pevent (session->pevent) to use with
pevent_find_event().

Cc: Andrey Wagin <avagin@gmail.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Link: http://lkml.kernel.org/n/tip-txkvew2ckko0b594ae8fbnyk@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2012-08-07 23:43:37 -03:00
..
include perf tools: Adding round_up/round_down macros 2012-06-29 15:25:28 -03:00
scripting-engines perf evsel: Cache associated event_format 2012-08-07 23:43:37 -03:00
abspath.c
alias.c
annotate.c perf annotate: Prevent overflow in size calculation 2012-07-25 13:06:42 -03:00
annotate.h perf annotate: Introduce ->free() method in ins_ops 2012-05-12 13:26:20 -03:00
bitmap.c perf tools: Add bitmap_or function into bitmap object 2012-02-13 23:28:10 -02:00
build-id.c perf buildid-list: Work better with pipe mode 2012-05-22 13:03:54 -03:00
build-id.h perf tools: Rename perf_event_ops to perf_tool 2011-11-28 10:39:28 -02:00
cache.h perf ui: Change fallback policy of setup_browser() 2012-05-02 16:17:37 -03:00
callchain.c perf callchain: Make callchain cursors TLS 2012-05-31 10:47:12 -03:00
callchain.h perf callchain: Make callchain cursors TLS 2012-05-31 10:47:12 -03:00
cgroup.c perf tools: Eliminate duplicate code and use PATH_MAX consistently 2011-11-28 10:11:04 -02:00
cgroup.h
color.c perf tools: Use scnprintf where applicable 2012-03-14 12:36:19 -03:00
color.h
config.c perf config: Allow '_' in config file variable names 2012-05-29 21:59:02 -03:00
cpumap.c perf tools: Add fprintf methods for thread_map and cpu_map classes 2012-01-24 19:46:48 -02:00
cpumap.h perf tools: Add fprintf methods for thread_map and cpu_map classes 2012-01-24 19:46:48 -02:00
ctype.c perf tools: ctype.c only wants util.h 2012-02-13 23:17:40 -02:00
debug.c perf ui: Introduce struct perf_error_ops 2012-06-19 13:06:18 -03:00
debug.h perf ui: Introduce struct perf_error_ops 2012-06-19 13:06:18 -03:00
debugfs.c perf tools: Remove unused functions from debugfs object 2012-02-13 23:25:38 -02:00
debugfs.h perf tools: Remove unused functions from debugfs object 2012-02-13 23:25:38 -02:00
dso-test-data.c perf test: Add dso data caching tests 2012-07-25 11:33:17 -03:00
dwarf-aux.c perf probe: Filter out redundant inline-instances 2011-08-12 09:34:35 -03:00
dwarf-aux.h perf probe: Search concrete out-of-line instances 2011-08-12 09:32:10 -03:00
environment.c
event.c perf tools: Ensure comm string is properly terminated 2012-02-29 18:29:45 -03:00
event.h perf evsel: Adopt parse_sample method from perf_event 2012-08-02 12:23:46 -03:00
evlist.c perf evsel: Adopt parse_sample method from perf_event 2012-08-02 12:23:46 -03:00
evlist.h perf evsel: Adopt parse_sample method from perf_event 2012-08-02 12:23:46 -03:00
evsel.c perf evsel: Adopt parse_sample method from perf_event 2012-08-02 12:23:46 -03:00
evsel.h perf evsel: Cache associated event_format 2012-08-07 23:43:37 -03:00
exec_cmd.c perf tools: Makefile: Remove various and sundry cruft 2011-02-18 07:43:06 -02:00
exec_cmd.h
generate-cmdlist.sh
header.c perf evsel: Cache associated event_format 2012-08-07 23:43:37 -03:00
header.h perf tools: rename HEADER_TRACE_INFO to HEADER_TRACING_DATA 2012-05-22 12:57:46 -03:00
help.c
help.h
hist.c perf hists: Print newline between hists callchains 2012-07-25 11:32:26 -03:00
hist.h perf tools: Add sort by src line/number 2012-06-19 13:06:18 -03:00
hweight.c
intlist.c perf tools: Introduce intlist 2012-08-03 10:42:25 -03:00
intlist.h perf tools: Introduce intlist 2012-08-03 10:42:25 -03:00
levenshtein.c
levenshtein.h
map.c perf kvm: Limit repetitive guestmount message to once per directory 2012-07-25 11:31:03 -03:00
map.h perf kvm: Fix bug resolving guest kernel syms 2012-07-25 11:30:13 -03:00
pager.c perf tools: Fix pager on minimal-install embedded systems 2012-05-30 15:10:39 -03:00
parse-events-test.c perf test: Fix parse events automated tests 2012-08-01 18:42:10 -03:00
parse-events.c perf tools: Make the breakpoint events sample period default to 1 2012-07-25 11:37:46 -03:00
parse-events.h Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 2012-06-20 13:41:53 +02:00
parse-events.l perf tools: Split out PE_VALUE_SYM parsing token to SW and HW tokens 2012-07-05 11:29:56 -03:00
parse-events.y perf tools: Split out PE_VALUE_SYM parsing token to SW and HW tokens 2012-07-05 11:29:56 -03:00
parse-options.c perf tool: Save cmdline from user in file header vs what is passed to record 2012-08-03 10:33:50 -03:00
parse-options.h
path.c
PERF-VERSION-GEN perf tools: Make --version show kernel version instead of pull req tag 2012-05-31 11:20:59 -03:00
pmu.c perf tools: Fix generation of pmu list 2012-06-29 13:31:27 -03:00
pmu.h perf/tool: Add PMU event alias support 2012-06-18 12:13:26 +02:00
pmu.l perf tools: Add perf pmu object to access pmu format definition 2012-03-16 14:29:35 -03:00
pmu.y perf tools: Add perf pmu object to access pmu format definition 2012-03-16 14:29:35 -03:00
probe-event.c perf uprobes: Remove unnecessary check before strlist__delete 2012-05-31 12:08:49 -03:00
probe-event.h perf probe: Provide perf interface for uprobes 2012-05-11 13:58:17 -03:00
probe-finder.c perf probe: Finder fails to resolve function name to address 2012-03-28 11:56:49 -03:00
probe-finder.h perf tools: Eliminate duplicate code and use PATH_MAX consistently 2011-11-28 10:11:04 -02:00
pstack.c
pstack.h
python-ext-sources perf tools: Allow multiple threads or processes in record, stat, top 2012-02-13 22:54:11 -02:00
python.c perf evlist: Introduce perf_evlist__parse_sample 2012-08-02 11:42:57 -03:00
quote.c
quote.h
rblist.c perf tools: Introducing rblist 2012-08-03 10:37:21 -03:00
rblist.h perf tools: Introducing rblist 2012-08-03 10:37:21 -03:00
run-command.c
run-command.h
session.c perf session: Remove no longer used synthesize_sample method 2012-08-02 21:02:02 -03:00
session.h perf session: Remove no longer used synthesize_sample method 2012-08-02 21:02:02 -03:00
setup.py perf tools: Fix build dependency of perf python extension 2012-02-13 18:01:25 -02:00
sigchain.c
sigchain.h
sort.c perf tools: Add sort by src line/number 2012-06-19 13:06:18 -03:00
sort.h perf tools: Add sort by src line/number 2012-06-19 13:06:18 -03:00
strbuf.c perf tools: Use scnprintf where applicable 2012-03-14 12:36:19 -03:00
strbuf.h
strfilter.c perf: Fix missing strndup declaration 2011-03-04 01:17:18 +01:00
strfilter.h
string.c perf lib: Introduce rtrim 2012-06-19 13:06:19 -03:00
strlist.c perf tools: Change strlist to use the new rblist 2012-08-03 10:39:51 -03:00
strlist.h perf tools: Change strlist to use the new rblist 2012-08-03 10:39:51 -03:00
svghelper.c perf timechart: Fix black idle boxes in the title 2011-02-28 08:56:14 +01:00
svghelper.h
symbol.c perf kvm: Use strtol for walking guestmount directory 2012-08-03 10:35:23 -03:00
symbol.h perf test: Add dso data caching tests 2012-07-25 11:33:17 -03:00
sysfs.c perf tools: Add sysfs mountpoint interface 2012-02-13 23:27:15 -02:00
sysfs.h perf tools: Add sysfs mountpoint interface 2012-02-13 23:27:15 -02:00
target.c perf target: Fix check on buffer size 2012-08-01 18:42:54 -03:00
target.h perf target: Add uses_mmap field 2012-05-17 12:32:54 -03:00
thread_map.c perf tools: fix thread_map__new_by_pid_str() memory leak in error path 2012-05-25 11:40:59 -03:00
thread_map.h perf tools: Fix thread map that is type pid_t 2012-04-11 17:38:50 -03:00
thread.c perf session: Move threads to struct machine 2011-11-28 10:35:31 -02:00
thread.h perf tools: Resolve machine earlier and pass it to perf_event_ops 2011-11-28 10:39:12 -02:00
tool.h perf tools: Save some loops using perf_evlist__id2evsel 2011-11-28 17:57:40 -02:00
top.c perf tools: Move all users of event_name to perf_evsel__name 2012-06-19 13:06:20 -03:00
top.h perf top: Convert to struct perf_target 2012-05-02 15:20:30 -03:00
trace-event-info.c perf: Have perf use the new libtraceevent.a library 2012-04-25 13:28:48 +02:00
trace-event-parse.c perf evsel: Cache associated event_format 2012-08-07 23:43:37 -03:00
trace-event-read.c perf tools: Stop using a global trace events description list 2012-06-27 13:08:42 -03:00
trace-event-scripting.c perf tools: Stop using a global trace events description list 2012-06-27 13:08:42 -03:00
trace-event.h perf evsel: Cache associated event_format 2012-08-07 23:43:37 -03:00
types.h perf tools: Add union u64_swap type for swapping u64 data 2012-05-22 12:50:25 -03:00
usage.c perf target: Introduce perf_target__parse_uid() 2012-05-07 16:46:48 -03:00
util.c perf tools: Add dump_stack function 2012-08-07 23:32:05 -03:00
util.h perf tools: Add dump_stack function 2012-08-07 23:32:05 -03:00
values.c perf tools: Fix a memory leak on perf_read_values_destroy 2011-12-20 13:41:34 -02:00
values.h
wrapper.c
xyarray.c
xyarray.h