perf inject: Fix processing of ID index for injected instruction tracing
Adrian Hunter
reviewerPATCH 1/1 perf inject: Fix processing of ID index for injected instruction tracing
The ID index event is used when decoding, but can result in the following error:
$ perf record --aux-sample -e '{intel_pt//,branch-misses}:u' ls
$ perf inject -i perf.data -o perf.data.inj --itrace=be
$ perf script -i perf.data.inj
0x1020 [0x410]: failed to process type: 69 [No such file or directory]Fix by having 'perf inject' drop the ID index event.
Fixes c0a6de06c446 ("perf record: Add support for AUX area sampling")
Signed-off-by Adrian Hunter <[email protected]>
--- tools/perf/builtin-inject.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-)
tools/perf/builtin-inject.c +1 -12
@@ -403,17 +403,6 @@ static int perf_event__repipe_tracing_data(struct perf_session *session,return err; } -static int perf_event__repipe_id_index (struct perf_session *session, -union perf_event *event) -{ -int err; - -perf_event__repipe_synth (session->tool, event); - err =perf_event__process_id_index (session, event); - -return err; -} -static int dso__read_build_id (struct dso *dso) {if (dso->has_build_id)
@@ -651,7 +640,7 @@ static int __cmd_inject(struct perf_inject *inject) inject->tool.comm = perf_event__repipe_comm; inject->tool.namespaces = perf_event__repipe_namespaces; inject->tool.exit = perf_event__repipe_exit; - inject->tool.id_index = perf_event__repipe_id_index; + inject->tool.id_index = perf_event__process_id_index; inject->tool.auxtrace_info = perf_event__process_auxtrace_info; inject->tool.auxtrace = perf_event__process_auxtrace; inject->tool.aux = perf_event__drop_aux;
Signature · 1 line
2.17.1
The following commit has been merged into the perf/urgent branch of tip:
The following commit has been merged into the perf/urgent branch of tip:
Commit-ID: 29f6eeca0e14b301d9c03a3164b852c318d6348a Gitweb: https://git.kernel.org/tip/29f6eeca0e14b301d9c03a3164b852c318d6348a Author: Adrian Hunter <[email protected]> AuthorDate: Wed, 04 Dec 2019 14:08:00 +02:00 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitterDate: Wed, 04 Dec 2019 12:39:53 -03:00
perf inject: Fix processing of ID index for injected instruction tracing
The ID index event is used when decoding, but can result in the following error:
$ perf record --aux-sample -e '{intel_pt//,branch-misses}:u' ls
$ perf inject -i perf.data -o perf.data.inj --itrace=be
$ perf script -i perf.data.inj
0x1020 [0x410]: failed to process type: 69 [No such file or directory]Fix by having 'perf inject' drop the ID index event.
Fixes c0a6de06c446 ("perf record: Add support for AUX area sampling")
Signed-off-by Adrian Hunter <[email protected]>
Cc Jiri Olsa <[email protected]>
Signed-off-by Arnaldo Carvalho de Melo <[email protected]>
--- tools/perf/builtin-inject.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-)
tools/perf/builtin-inject.c +1 -12
@@ -403,17 +403,6 @@ static int perf_event__repipe_tracing_data(struct perf_session *session,return err; } -static int perf_event__repipe_id_index (struct perf_session *session, -union perf_event *event) -{ -int err; - -perf_event__repipe_synth (session->tool, event); - err =perf_event__process_id_index (session, event); - -return err; -} -static int dso__read_build_id (struct dso *dso) {if (dso->has_build_id)
@@ -651,7 +640,7 @@ static int __cmd_inject(struct perf_inject *inject) inject->tool.comm = perf_event__repipe_comm; inject->tool.namespaces = perf_event__repipe_namespaces; inject->tool.exit = perf_event__repipe_exit; - inject->tool.id_index = perf_event__repipe_id_index; + inject->tool.id_index = perf_event__process_id_index; inject->tool.auxtrace_info = perf_event__process_auxtrace_info; inject->tool.auxtrace = perf_event__process_auxtrace; inject->tool.aux = perf_event__drop_aux;