* [PATCH v2 0/3] perf script: Few trivial fixes
@ 2018-06-25 12:42 Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 1/3] perf script: Add missing output fields in a hint Ravi Bangoria
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Ravi Bangoria @ 2018-06-25 12:42 UTC (permalink / raw)
To: acme, jolsa
Cc: alexander.shishkin, namhyung, dsahern, davidcc, ak, yao.jin,
linux-kernel, Ravi Bangoria
First patch fixes perf output field hint. Second and third fixes
crash when used in a piped mode.
v2 changes:
- [PATCH 3/3] Changed as suggested by Arnaldo
v1: https://lkml.org/lkml/2018/6/20/538
Ravi Bangoria (3):
perf script: Add missing output fields in a hint
perf script: Fix crash because of missing evsel->priv
perf script/annotate: Fix crash caused by accessing
feat_ops[HEADER_LAST_FEATURE]
tools/perf/builtin-annotate.c | 11 ++++++++++-
tools/perf/builtin-report.c | 3 ++-
tools/perf/builtin-script.c | 30 +++++++++++++++++++++++++++---
tools/perf/util/header.c | 2 +-
4 files changed, 40 insertions(+), 6 deletions(-)
--
2.14.4
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/3] perf script: Add missing output fields in a hint
2018-06-25 12:42 [PATCH v2 0/3] perf script: Few trivial fixes Ravi Bangoria
@ 2018-06-25 12:42 ` Ravi Bangoria
2018-06-26 6:59 ` [tip:perf/urgent] " tip-bot for Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 2/3] perf script: Fix crash because of missing evsel->priv Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 3/3] perf script/annotate: Fix crash caused by accessing feat_ops[HEADER_LAST_FEATURE] Ravi Bangoria
2 siblings, 1 reply; 7+ messages in thread
From: Ravi Bangoria @ 2018-06-25 12:42 UTC (permalink / raw)
To: acme, jolsa
Cc: alexander.shishkin, namhyung, dsahern, davidcc, ak, yao.jin,
linux-kernel, Ravi Bangoria
Few fields are missing in a perf script -F hint. Add them.
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
---
tools/perf/builtin-script.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index a31d7082188e..f3fefbcc4503 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -3125,8 +3125,9 @@ int cmd_script(int argc, const char **argv)
"+field to add and -field to remove."
"Valid types: hw,sw,trace,raw,synth. "
"Fields: comm,tid,pid,time,cpu,event,trace,ip,sym,dso,"
- "addr,symoff,period,iregs,uregs,brstack,brstacksym,flags,"
- "bpf-output,callindent,insn,insnlen,brstackinsn,synth,phys_addr",
+ "addr,symoff,srcline,period,iregs,uregs,brstack,"
+ "brstacksym,flags,bpf-output,brstackinsn,brstackoff,"
+ "callindent,insn,insnlen,synth,phys_addr,metric,misc",
parse_output_fields),
OPT_BOOLEAN('a', "all-cpus", &system_wide,
"system-wide collection from all CPUs"),
--
2.14.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 2/3] perf script: Fix crash because of missing evsel->priv
2018-06-25 12:42 [PATCH v2 0/3] perf script: Few trivial fixes Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 1/3] perf script: Add missing output fields in a hint Ravi Bangoria
@ 2018-06-25 12:42 ` Ravi Bangoria
2018-06-26 7:00 ` [tip:perf/urgent] " tip-bot for Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 3/3] perf script/annotate: Fix crash caused by accessing feat_ops[HEADER_LAST_FEATURE] Ravi Bangoria
2 siblings, 1 reply; 7+ messages in thread
From: Ravi Bangoria @ 2018-06-25 12:42 UTC (permalink / raw)
To: acme, jolsa
Cc: alexander.shishkin, namhyung, dsahern, davidcc, ak, yao.jin,
linux-kernel, Ravi Bangoria
perf script in pipped mode is crashing because evsel->priv is not
set properly. Fix it.
Before:
# ./perf record -o - -- ls | ./perf script
Segmentation fault (core dumped)
After:
# ./perf record -o - -- ls | ./perf script
ls 2282 1031.731974: 250000 cpu-clock:uhH: 7effe4b3d29e
ls 2282 1031.732222: 250000 cpu-clock:uhH: 7effe4b3a650
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Fixes: a14390fde64e ("perf script: Allow creating per-event dump files")
---
tools/perf/builtin-script.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index f3fefbcc4503..ad2ac1300420 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -1834,6 +1834,7 @@ static int process_attr(struct perf_tool *tool, union perf_event *event,
struct perf_evlist *evlist;
struct perf_evsel *evsel, *pos;
int err;
+ static struct perf_evsel_script *es;
err = perf_event__process_attr(tool, event, pevlist);
if (err)
@@ -1842,6 +1843,19 @@ static int process_attr(struct perf_tool *tool, union perf_event *event,
evlist = *pevlist;
evsel = perf_evlist__last(*pevlist);
+ if (!evsel->priv) {
+ if (scr->per_event_dump) {
+ evsel->priv = perf_evsel_script__new(evsel,
+ scr->session->data);
+ } else {
+ es = zalloc(sizeof(*es));
+ if (!es)
+ return -ENOMEM;
+ es->fp = stdout;
+ evsel->priv = es;
+ }
+ }
+
if (evsel->attr.type >= PERF_TYPE_MAX &&
evsel->attr.type != PERF_TYPE_SYNTH)
return 0;
--
2.14.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 3/3] perf script/annotate: Fix crash caused by accessing feat_ops[HEADER_LAST_FEATURE]
2018-06-25 12:42 [PATCH v2 0/3] perf script: Few trivial fixes Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 1/3] perf script: Add missing output fields in a hint Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 2/3] perf script: Fix crash because of missing evsel->priv Ravi Bangoria
@ 2018-06-25 12:42 ` Ravi Bangoria
2018-06-26 7:00 ` [tip:perf/urgent] perf tools: " tip-bot for Ravi Bangoria
2 siblings, 1 reply; 7+ messages in thread
From: Ravi Bangoria @ 2018-06-25 12:42 UTC (permalink / raw)
To: acme, jolsa
Cc: alexander.shishkin, namhyung, dsahern, davidcc, ak, yao.jin,
linux-kernel, Ravi Bangoria
perf_event__process_feature() accesses feat_ops[HEADER_LAST_FEATURE]
which is not defined and thus perf is crashing. HEADER_LAST_FEATURE
is used as an end marker for the perf report but it's unused for
perf script/annotate. Ignore HEADER_LAST_FEATURE for perf script/
annotate.
Before:
# ./perf record -o - ls | ./perf script
Segmentation fault (core dumped)
After:
# ./perf record -o - ls | ./perf script
ls 7031 4392.099856: 250000 cpu-clock:uhH: 7f5e0ce7cd60
ls 7031 4392.100355: 250000 cpu-clock:uhH: 7f5e0c706ef7
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Fixes: 57b5de463925 ("perf report: Support forced leader feature in pipe mode")
---
tools/perf/builtin-annotate.c | 11 ++++++++++-
tools/perf/builtin-report.c | 3 ++-
tools/perf/builtin-script.c | 11 ++++++++++-
| 2 +-
4 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 5eb22cc56363..8180319285af 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -283,6 +283,15 @@ static int process_sample_event(struct perf_tool *tool,
return ret;
}
+static int process_feature_event(struct perf_tool *tool,
+ union perf_event *event,
+ struct perf_session *session)
+{
+ if (event->feat.feat_id < HEADER_LAST_FEATURE)
+ return perf_event__process_feature(tool, event, session);
+ return 0;
+}
+
static int hist_entry__tty_annotate(struct hist_entry *he,
struct perf_evsel *evsel,
struct perf_annotate *ann)
@@ -471,7 +480,7 @@ int cmd_annotate(int argc, const char **argv)
.attr = perf_event__process_attr,
.build_id = perf_event__process_build_id,
.tracing_data = perf_event__process_tracing_data,
- .feature = perf_event__process_feature,
+ .feature = process_feature_event,
.ordered_events = true,
.ordering_requires_timestamps = true,
},
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index cdb5b6949832..c04dc7b53797 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -217,7 +217,8 @@ static int process_feature_event(struct perf_tool *tool,
}
/*
- * All features are received, we can force the
+ * (feat_id = HEADER_LAST_FEATURE) is the end marker which
+ * means all features are received, now we can force the
* group if needed.
*/
setup_forced_leader(rep, session->evlist);
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index ad2ac1300420..568ddfac3213 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -3044,6 +3044,15 @@ int process_cpu_map_event(struct perf_tool *tool __maybe_unused,
return set_maps(script);
}
+static int process_feature_event(struct perf_tool *tool,
+ union perf_event *event,
+ struct perf_session *session)
+{
+ if (event->feat.feat_id < HEADER_LAST_FEATURE)
+ return perf_event__process_feature(tool, event, session);
+ return 0;
+}
+
#ifdef HAVE_AUXTRACE_SUPPORT
static int perf_script__process_auxtrace_info(struct perf_tool *tool,
union perf_event *event,
@@ -3088,7 +3097,7 @@ int cmd_script(int argc, const char **argv)
.attr = process_attr,
.event_update = perf_event__process_event_update,
.tracing_data = perf_event__process_tracing_data,
- .feature = perf_event__process_feature,
+ .feature = process_feature_event,
.build_id = perf_event__process_build_id,
.id_index = perf_event__process_id_index,
.auxtrace_info = perf_script__process_auxtrace_info,
--git a/tools/perf/util/header.c b/tools/perf/util/header.c
index 59fcc790c865..653ff65aa2c3 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -3464,7 +3464,7 @@ int perf_event__process_feature(struct perf_tool *tool,
pr_warning("invalid record type %d in pipe-mode\n", type);
return 0;
}
- if (feat == HEADER_RESERVED || feat > HEADER_LAST_FEATURE) {
+ if (feat == HEADER_RESERVED || feat >= HEADER_LAST_FEATURE) {
pr_warning("invalid record type %d in pipe-mode\n", type);
return -1;
}
--
2.14.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [tip:perf/urgent] perf script: Add missing output fields in a hint
2018-06-25 12:42 ` [PATCH v2 1/3] perf script: Add missing output fields in a hint Ravi Bangoria
@ 2018-06-26 6:59 ` tip-bot for Ravi Bangoria
0 siblings, 0 replies; 7+ messages in thread
From: tip-bot for Ravi Bangoria @ 2018-06-26 6:59 UTC (permalink / raw)
To: linux-tip-commits
Cc: ravi.bangoria, hpa, namhyung, mingo, alexander.shishkin, yao.jin,
tglx, ak, jolsa, acme, dsahern, linux-kernel, davidcc
Commit-ID: 10e9cec905f96fdf47f398be70726e2931b376cd
Gitweb: https://git.kernel.org/tip/10e9cec905f96fdf47f398be70726e2931b376cd
Author: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
AuthorDate: Mon, 25 Jun 2018 18:12:18 +0530
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Mon, 25 Jun 2018 11:59:37 -0300
perf script: Add missing output fields in a hint
A few fields are missing in a perf script -F hint. Add them.
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: David Carrillo-Cisneros <davidcc@google.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lkml.kernel.org/r/20180625124220.6434-2-ravi.bangoria@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/builtin-script.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index a31d7082188e..f3fefbcc4503 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -3125,8 +3125,9 @@ int cmd_script(int argc, const char **argv)
"+field to add and -field to remove."
"Valid types: hw,sw,trace,raw,synth. "
"Fields: comm,tid,pid,time,cpu,event,trace,ip,sym,dso,"
- "addr,symoff,period,iregs,uregs,brstack,brstacksym,flags,"
- "bpf-output,callindent,insn,insnlen,brstackinsn,synth,phys_addr",
+ "addr,symoff,srcline,period,iregs,uregs,brstack,"
+ "brstacksym,flags,bpf-output,brstackinsn,brstackoff,"
+ "callindent,insn,insnlen,synth,phys_addr,metric,misc",
parse_output_fields),
OPT_BOOLEAN('a', "all-cpus", &system_wide,
"system-wide collection from all CPUs"),
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [tip:perf/urgent] perf script: Fix crash because of missing evsel->priv
2018-06-25 12:42 ` [PATCH v2 2/3] perf script: Fix crash because of missing evsel->priv Ravi Bangoria
@ 2018-06-26 7:00 ` tip-bot for Ravi Bangoria
0 siblings, 0 replies; 7+ messages in thread
From: tip-bot for Ravi Bangoria @ 2018-06-26 7:00 UTC (permalink / raw)
To: linux-tip-commits
Cc: dsahern, tglx, linux-kernel, ravi.bangoria, acme, ak,
alexander.shishkin, yao.jin, namhyung, davidcc, hpa, mingo,
jolsa
Commit-ID: a3af66f51bd0bca72881ead4bf2bd19cb366582b
Gitweb: https://git.kernel.org/tip/a3af66f51bd0bca72881ead4bf2bd19cb366582b
Author: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
AuthorDate: Mon, 25 Jun 2018 18:12:19 +0530
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Mon, 25 Jun 2018 11:59:37 -0300
perf script: Fix crash because of missing evsel->priv
'perf script' in piped mode is crashing because evsel->priv is not set
properly. Fix it.
Before:
# perf record -o - -- ls | perf script
<SNIP 'ls' output>
Segmentation fault (core dumped)
#
After:
# perf record -o - -- ls | perf script
<SNIP 'ls' output>
ls 2282 1031.731974: 250000 cpu-clock:uhH: 7effe4b3d29e
ls 2282 1031.732222: 250000 cpu-clock:uhH: 7effe4b3a650
#
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: David Carrillo-Cisneros <davidcc@google.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Fixes: a14390fde64e ("perf script: Allow creating per-event dump files")
Link: http://lkml.kernel.org/r/20180625124220.6434-3-ravi.bangoria@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/builtin-script.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index f3fefbcc4503..ad2ac1300420 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -1834,6 +1834,7 @@ static int process_attr(struct perf_tool *tool, union perf_event *event,
struct perf_evlist *evlist;
struct perf_evsel *evsel, *pos;
int err;
+ static struct perf_evsel_script *es;
err = perf_event__process_attr(tool, event, pevlist);
if (err)
@@ -1842,6 +1843,19 @@ static int process_attr(struct perf_tool *tool, union perf_event *event,
evlist = *pevlist;
evsel = perf_evlist__last(*pevlist);
+ if (!evsel->priv) {
+ if (scr->per_event_dump) {
+ evsel->priv = perf_evsel_script__new(evsel,
+ scr->session->data);
+ } else {
+ es = zalloc(sizeof(*es));
+ if (!es)
+ return -ENOMEM;
+ es->fp = stdout;
+ evsel->priv = es;
+ }
+ }
+
if (evsel->attr.type >= PERF_TYPE_MAX &&
evsel->attr.type != PERF_TYPE_SYNTH)
return 0;
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [tip:perf/urgent] perf tools: Fix crash caused by accessing feat_ops[HEADER_LAST_FEATURE]
2018-06-25 12:42 ` [PATCH v2 3/3] perf script/annotate: Fix crash caused by accessing feat_ops[HEADER_LAST_FEATURE] Ravi Bangoria
@ 2018-06-26 7:00 ` tip-bot for Ravi Bangoria
0 siblings, 0 replies; 7+ messages in thread
From: tip-bot for Ravi Bangoria @ 2018-06-26 7:00 UTC (permalink / raw)
To: linux-tip-commits
Cc: mingo, davidcc, hpa, jolsa, ravi.bangoria, ak,
alexander.shishkin, tglx, dsahern, linux-kernel, acme, yao.jin,
namhyung
Commit-ID: 92ead7ee30c80f8852d28735cbcb9d79bc85f715
Gitweb: https://git.kernel.org/tip/92ead7ee30c80f8852d28735cbcb9d79bc85f715
Author: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
AuthorDate: Mon, 25 Jun 2018 18:12:20 +0530
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Mon, 25 Jun 2018 11:59:37 -0300
perf tools: Fix crash caused by accessing feat_ops[HEADER_LAST_FEATURE]
perf_event__process_feature() accesses feat_ops[HEADER_LAST_FEATURE]
which is not defined and thus perf is crashing. HEADER_LAST_FEATURE is
used as an end marker for the perf report but it's unused for perf
script/annotate. Ignore HEADER_LAST_FEATURE for perf script/annotate,
just like it is done in 'perf report'.
Before:
# perf record -o - ls | perf script
<SNIP 'ls' output>
Segmentation fault (core dumped)
#
After:
# perf record -o - ls | perf script
<SNIP 'ls' output>
Segmentation fault (core dumped)
ls 7031 4392.099856: 250000 cpu-clock:uhH: 7f5e0ce7cd60
ls 7031 4392.100355: 250000 cpu-clock:uhH: 7f5e0c706ef7
#
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: David Carrillo-Cisneros <davidcc@google.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Fixes: 57b5de463925 ("perf report: Support forced leader feature in pipe mode")
Link: http://lkml.kernel.org/r/20180625124220.6434-4-ravi.bangoria@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/builtin-annotate.c | 11 ++++++++++-
tools/perf/builtin-report.c | 3 ++-
tools/perf/builtin-script.c | 11 ++++++++++-
| 2 +-
4 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 5eb22cc56363..8180319285af 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -283,6 +283,15 @@ out_put:
return ret;
}
+static int process_feature_event(struct perf_tool *tool,
+ union perf_event *event,
+ struct perf_session *session)
+{
+ if (event->feat.feat_id < HEADER_LAST_FEATURE)
+ return perf_event__process_feature(tool, event, session);
+ return 0;
+}
+
static int hist_entry__tty_annotate(struct hist_entry *he,
struct perf_evsel *evsel,
struct perf_annotate *ann)
@@ -471,7 +480,7 @@ int cmd_annotate(int argc, const char **argv)
.attr = perf_event__process_attr,
.build_id = perf_event__process_build_id,
.tracing_data = perf_event__process_tracing_data,
- .feature = perf_event__process_feature,
+ .feature = process_feature_event,
.ordered_events = true,
.ordering_requires_timestamps = true,
},
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index cdb5b6949832..c04dc7b53797 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -217,7 +217,8 @@ static int process_feature_event(struct perf_tool *tool,
}
/*
- * All features are received, we can force the
+ * (feat_id = HEADER_LAST_FEATURE) is the end marker which
+ * means all features are received, now we can force the
* group if needed.
*/
setup_forced_leader(rep, session->evlist);
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index ad2ac1300420..568ddfac3213 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -3044,6 +3044,15 @@ int process_cpu_map_event(struct perf_tool *tool __maybe_unused,
return set_maps(script);
}
+static int process_feature_event(struct perf_tool *tool,
+ union perf_event *event,
+ struct perf_session *session)
+{
+ if (event->feat.feat_id < HEADER_LAST_FEATURE)
+ return perf_event__process_feature(tool, event, session);
+ return 0;
+}
+
#ifdef HAVE_AUXTRACE_SUPPORT
static int perf_script__process_auxtrace_info(struct perf_tool *tool,
union perf_event *event,
@@ -3088,7 +3097,7 @@ int cmd_script(int argc, const char **argv)
.attr = process_attr,
.event_update = perf_event__process_event_update,
.tracing_data = perf_event__process_tracing_data,
- .feature = perf_event__process_feature,
+ .feature = process_feature_event,
.build_id = perf_event__process_build_id,
.id_index = perf_event__process_id_index,
.auxtrace_info = perf_script__process_auxtrace_info,
--git a/tools/perf/util/header.c b/tools/perf/util/header.c
index 59fcc790c865..653ff65aa2c3 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -3464,7 +3464,7 @@ int perf_event__process_feature(struct perf_tool *tool,
pr_warning("invalid record type %d in pipe-mode\n", type);
return 0;
}
- if (feat == HEADER_RESERVED || feat > HEADER_LAST_FEATURE) {
+ if (feat == HEADER_RESERVED || feat >= HEADER_LAST_FEATURE) {
pr_warning("invalid record type %d in pipe-mode\n", type);
return -1;
}
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2018-06-26 7:01 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-25 12:42 [PATCH v2 0/3] perf script: Few trivial fixes Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 1/3] perf script: Add missing output fields in a hint Ravi Bangoria
2018-06-26 6:59 ` [tip:perf/urgent] " tip-bot for Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 2/3] perf script: Fix crash because of missing evsel->priv Ravi Bangoria
2018-06-26 7:00 ` [tip:perf/urgent] " tip-bot for Ravi Bangoria
2018-06-25 12:42 ` [PATCH v2 3/3] perf script/annotate: Fix crash caused by accessing feat_ops[HEADER_LAST_FEATURE] Ravi Bangoria
2018-06-26 7:00 ` [tip:perf/urgent] perf tools: " tip-bot for Ravi Bangoria
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).