projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0ba9814
)
perf record: Store data mmaps for dwarf unwind
author
Jiri Olsa
<
[email protected]
>
Thu, 7 Jan 2016 13:30:22 +0000
(14:30 +0100)
committer
Arnaldo Carvalho de Melo
<
[email protected]
>
Fri, 8 Jan 2016 17:17:45 +0000
(14:17 -0300)
Currently we don't synthesize data mmap by default. It depends on -d
option, that enables data address sampling.
But we've seen cases (softice) where DWARF unwinder went through non
executable mmaps, which we need to lookup in MAP__VARIABLE tree.
Making data mmaps to be synthesized for dwarf unwind as well.
Reported-by: Noel Grandin <
[email protected]
>
Signed-off-by: Jiri Olsa <
[email protected]
>
Cc: Adrian Hunter <
[email protected]
>
Cc: David Ahern <
[email protected]
>
Cc: Namhyung Kim <
[email protected]
>
Cc: Peter Zijlstra <
[email protected]
>
Link:
http://lkml.kernel.org/r/
[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <
[email protected]
>
tools/perf/builtin-record.c
patch
|
blob
|
history
diff --git
a/tools/perf/builtin-record.c
b/tools/perf/builtin-record.c
index 9c5cdc2c44714a937cb04e09a523373773b3a4e8..dc4e0adf5c5b5c60cf96cb22120918c575f2b113 100644
(file)
--- a/
tools/perf/builtin-record.c
+++ b/
tools/perf/builtin-record.c
@@
-815,8
+815,12
@@
int record_parse_callchain_opt(const struct option *opt,
}
ret = parse_callchain_record_opt(arg, &callchain_param);
- if (!ret)
+ if (!ret) {
+ /* Enable data address sampling for DWARF unwind. */
+ if (callchain_param.record_mode == CALLCHAIN_DWARF)
+ record->sample_address = true;
callchain_debug();
+ }
return ret;
}