android_kernel_xiaomi_sm8350/tools/perf/util
Eric B Munson 70c3856b2f perf symbols: Function descriptor symbol lookup
Currently symbol resolution does not work for 64-bit programs on architectures
that use function descriptors such as ppc64.

The problem is that a symbol doesn't point to a text address, it points to a
data area that contains (amongst other things) a pointer to the text address.

We look for a section called ".opd" which is the function descriptor area. To
create the full symbol table, when we see a symbol in the function descriptor
section we load the first pointer and use that as the text address.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
LKML-Reference: <1276523793-15422-1-git-send-email-ebmunson@us.ibm.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Eric B Munson <ebmunson@us.ibm.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2010-06-17 10:06:27 -03:00
..
include perf options: Check v type in OPT_U?INTEGER 2010-05-17 15:43:38 -03:00
scripting-engines perf scripts python: Give field dict to unhandled callback 2010-06-01 06:12:35 -03:00
abspath.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
alias.c
bitmap.c perf tools: Don't use code surrounded by __KERNEL__ 2010-05-02 12:00:44 -03:00
build-id.c perf buildid: add perfconfig option to specify buildid cache dir 2010-06-05 09:34:04 -03: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 buildid: add perfconfig option to specify buildid cache dir 2010-06-05 09:34:04 -03:00
callchain.c perf tools: Make event__preprocess_sample parse the sample 2010-06-05 09:35:19 -03:00
callchain.h perf tools: Make event__preprocess_sample parse the sample 2010-06-05 09:35:19 -03: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 the ability to specify list of cpus to monitor 2010-06-05 09:33:01 -03:00
cpumap.h perf tools: Add the ability to specify list of cpus to monitor 2010-06-05 09:33:01 -03:00
ctype.c
debug.c perf tui: Fix last use_browser problem related to .perfconfig 2010-05-27 09:53:40 -03:00
debug.h perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR() 2010-04-14 11:26:44 +02:00
debugfs.c
debugfs.h
environment.c
event.c perf report: Implement --sort cpu 2010-06-05 09:35:53 -03:00
event.h perf tools: Make event__preprocess_sample parse the sample 2010-06-05 09:35:19 -03: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 buildid: add perfconfig option to specify buildid cache dir 2010-06-05 09:34:04 -03:00
header.h perf/live: don't synthesize build ids at the end of a live mode trace 2010-05-02 12:04:05 -03:00
help.c perf tools: Remove some unused functions 2010-05-18 23:03:35 -03:00
help.h
hist.c perf report: Implement --sort cpu 2010-06-05 09:35:53 -03:00
hist.h perf report: Support multiple events on the TUI 2010-05-23 22:36:51 -03:00
hweight.c perf tools: Don't use code surrounded by __KERNEL__ 2010-05-02 12:00:44 -03:00
levenshtein.c
levenshtein.h
map.c perf session: Embed the host machine data on perf_session 2010-05-09 21:14:52 -03:00
map.h perf symbols: Add machine helper routines 2010-04-29 15:25:23 -03:00
newt.c perf tui: Reset use_browser if stdout is not a tty 2010-05-26 13:22:26 -03:00
pager.c
parse-events.c Merge branch 'perf' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core 2010-05-08 10:02:57 +02:00
parse-events.h perf: record TRACE_INFO only if using tracepoints and SAMPLE_RAW 2010-05-03 10:31:48 -03: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: Type check all the remaining OPT_ variants 2010-05-17 16:22:41 -03:00
path.c perf tools: remove xstrndup, xmalloc, xzalloc 2010-05-18 23:05:28 -03:00
PERF-VERSION-GEN perf tools: Allow specifying O= to build files in a separate directory 2010-04-02 16:28:03 -03:00
probe-event.c perf machine: Adopt some map_groups functions 2010-04-27 21:21:18 -03:00
probe-event.h perf probe: Add --max-probes option 2010-04-26 15:35:20 -03:00
probe-finder.c perf probe: Fix some error exit paths 2010-05-18 23:04:28 -03:00
probe-finder.h perf probe: Don't compile CFI related code if elfutils is old 2010-05-17 22:13:51 -03:00
pstack.c perf newt: Make <- zoom out filters 2010-05-14 20:05:21 -03:00
pstack.h perf newt: Make <- zoom out filters 2010-05-14 20:05:21 -03: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 session: Make read_build_id routines look at the host_machine too 2010-05-19 13:45:08 -03:00
session.h perf session: Make read_build_id routines look at the host_machine too 2010-05-19 13:45:08 -03: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 report: Implement --sort cpu 2010-06-05 09:35:53 -03:00
sort.h perf report: Implement --sort cpu 2010-06-05 09:35:53 -03: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
string.c perf: Swap inclusion order of util.h and string.h in util/string.c 2010-04-04 16:40:42 +02:00
strlist.c
strlist.h
svghelper.c
svghelper.h
symbol.c perf symbols: Function descriptor symbol lookup 2010-06-17 10:06:27 -03:00
symbol.h perf report: Implement --sort cpu 2010-06-05 09:35:53 -03:00
thread.c perf symbols: Move more map_groups methods to map.c 2010-04-02 16:27:39 -03:00
thread.h perf: 'perf kvm' tool for monitoring guest performance from host 2010-04-19 12:37:24 +03:00
trace-event-info.c perf/record: simplify TRACE_INFO tracepoint check 2010-05-05 11:12:53 -03:00
trace-event-parse.c Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-05-18 08:19:03 -07: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
trace-event.h perf: Fix unaligned accesses while fetching trace values 2010-05-20 11:21:57 +02:00
types.h
usage.c
util.c perf report: Report number of events, not samples 2010-05-14 14:19:35 -03:00
util.h perf buildid: add perfconfig option to specify buildid cache dir 2010-06-05 09:34:04 -03:00
values.c
values.h
wrapper.c perf tools: remove xstrndup, xmalloc, xzalloc 2010-05-18 23:05:28 -03:00