[<prev] [next>] [day] [month] [year] [list]
Message-ID: <tip-c8hprylp3ai6e0z9burn2r3s@git.kernel.org>
Date: Tue, 30 Jul 2019 10:51:06 -0700
From: tip-bot for Arnaldo Carvalho de Melo <tipbot@...or.com>
To: linux-tip-commits@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, adrian.hunter@...el.com,
acme@...hat.com, namhyung@...nel.org, jolsa@...nel.org,
tglx@...utronix.de, hpa@...or.com, lclaudio@...hat.com,
mingo@...nel.org
Subject: [tip:perf/core] perf trace: Order -e syscalls table
Commit-ID: 83e69b92b10c2a8b75e1919b7074338f8bdbacaf
Gitweb: https://git.kernel.org/tip/83e69b92b10c2a8b75e1919b7074338f8bdbacaf
Author: Arnaldo Carvalho de Melo <acme@...hat.com>
AuthorDate: Mon, 15 Jul 2019 17:28:25 -0300
Committer: Arnaldo Carvalho de Melo <acme@...hat.com>
CommitDate: Mon, 29 Jul 2019 18:34:41 -0300
perf trace: Order -e syscalls table
The ev_qualifier is an array with the syscall ids passed via -e on the
command line, sort it as we'll search it when setting up the
BPF_MAP_TYPE_PROG_ARRAY.
Cc: Adrian Hunter <adrian.hunter@...el.com>
Cc: Jiri Olsa <jolsa@...nel.org>
Cc: Luis Cláudio Gonçalves <lclaudio@...hat.com>
Cc: Namhyung Kim <namhyung@...nel.org>
Link: https://lkml.kernel.org/n/tip-c8hprylp3ai6e0z9burn2r3s@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com>
---
tools/perf/builtin-trace.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index bfd739a321d1..9bd5ecd6a8dd 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -1528,6 +1528,13 @@ static int trace__read_syscall_info(struct trace *trace, int id)
return syscall__set_arg_fmts(sc);
}
+static int intcmp(const void *a, const void *b)
+{
+ const int *one = a, *another = b;
+
+ return *one - *another;
+}
+
static int trace__validate_ev_qualifier(struct trace *trace)
{
int err = 0;
@@ -1591,6 +1598,7 @@ matches:
}
trace->ev_qualifier_ids.nr = nr_used;
+ qsort(trace->ev_qualifier_ids.entries, nr_used, sizeof(int), intcmp);
out:
if (printed_invalid_prefix)
pr_debug("\n");
Powered by blists - more mailing lists