[lkml]   [2012]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
SubjectRe: Does perf inject preserve call chain data?
On 5/22/12 12:49 PM, Tim Chen wrote:
> Arnaldo,
> Wonder if perf inject munged the call chain data from perf record?
> When I do
> perf record -a -g -o - sleep 5 |perf inject -v -b | perf report -g -i -
> I get a complain from perf report
> Warning:
> Selected -g but no callchain data. Did you call 'perf record' without -g?

I believe the root cause is that the event list is not written to the
pipe. Using Arnaldo's git repo as of today (has fixes from Stephane)
this hack shows the info is there and can be processed.

diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index d58e414..60f3f17 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -256,7 +257,7 @@ static int perf_report__setup_sample_type(struct
perf_report *rep)
"'perf record' without -g?\n");
return -EINVAL;
- if (symbol_conf.use_callchain) {
+ if (!self->fd_pipe && symbol_conf.use_callchain) {
ui__warning("Selected -g but no callchain data. Did "
"you call 'perf record' without -g?\n");
return -1;
A proper solution is needed.


 \ /
  Last update: 2012-05-23 00:41    [W:0.038 / U:0.784 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site