aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/builtin-script.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2017-04-12 07:29:13 +0200
committerIngo Molnar <mingo@kernel.org>2017-04-12 09:22:19 +0200
commitef0eb2e6447f562bae2bcf503afcd85d68e843cc (patch)
treec6c89a26511e564efe85c1e69132aedd439c932d /tools/perf/builtin-script.c
parent1c4f8ad81c7f13314e4357550be9d5be3754fed9 (diff)
parent986a5bc028a84d487c354a529730b48682d1fb41 (diff)
Merge tag 'perf-core-for-mingo-4.12-20170411' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
perf/core improvements and fixes: User visible changes: - Support s390 jump instructions in perf annotate (Christian Borntraeger) - When failing to setup multiple events (e.g. '-e irq_vectors:*'), state which one caused the failure (Yao Jin) - Various fixes for pipe mode, where the output of 'perf record' is written to stdout instead of to a perf.data file, fixing workloads such as: (David Carrillo-Cisneros) $ perf record -o - noploop | perf inject -b > perf.data $ perf record -o - noploop | perf annotate Infrastructure changes: - Simplify ltrim() implementation (Arnaldo Carvalho de Melo) - Use ltrim() and rtrim() in places where ad-hoc equivalents were being used (Taeung Song) Conflicts: tools/perf/util/annotate.c Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/builtin-script.c')
-rw-r--r--tools/perf/builtin-script.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index 46acc8ece41f..2dab70fba2ba 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -1708,7 +1708,7 @@ static int parse_scriptname(const struct option *opt __maybe_unused,
static int parse_output_fields(const struct option *opt __maybe_unused,
const char *arg, int unset __maybe_unused)
{
- char *tok;
+ char *tok, *strtok_saveptr = NULL;
int i, imax = ARRAY_SIZE(all_output_options);
int j;
int rc = 0;
@@ -1769,7 +1769,7 @@ static int parse_output_fields(const struct option *opt __maybe_unused,
}
}
- for (tok = strtok(tok, ","); tok; tok = strtok(NULL, ",")) {
+ for (tok = strtok_r(tok, ",", &strtok_saveptr); tok; tok = strtok_r(NULL, ",", &strtok_saveptr)) {
for (i = 0; i < imax; ++i) {
if (strcmp(tok, all_output_options[i].str) == 0)
break;