[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241118225345.889810-1-irogers@google.com>
Date: Mon, 18 Nov 2024 14:53:38 -0800
From: Ian Rogers <irogers@...gle.com>
To: Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>, Namhyung Kim <namhyung@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org>,
Ian Rogers <irogers@...gle.com>, Adrian Hunter <adrian.hunter@...el.com>,
Kan Liang <kan.liang@...ux.intel.com>, Athira Jajeev <atrajeev@...ux.vnet.ibm.com>,
James Clark <james.clark@...aro.org>, Dominique Martinet <asmadeus@...ewreck.org>,
Yang Li <yang.lee@...ux.alibaba.com>, Colin Ian King <colin.i.king@...il.com>,
Yang Jihong <yangjihong@...edance.com>, "Steinar H. Gunderson" <sesse@...gle.com>,
Oliver Upton <oliver.upton@...ux.dev>, Ilkka Koskinen <ilkka@...amperecomputing.com>,
Ze Gao <zegao2021@...il.com>, Weilin Wang <weilin.wang@...el.com>,
Ben Gainey <ben.gainey@....com>, zhaimingbing <zhaimingbing@...s.chinamobile.com>,
Zixian Cai <fzczx123@...il.com>, Andi Kleen <ak@...ux.intel.com>, Paran Lee <p4ranlee@...il.com>,
Thomas Falcon <thomas.falcon@...el.com>, linux-kernel@...r.kernel.org,
linux-perf-users@...r.kernel.org,
"Steven Rostedt (Google)" <rostedt@...dmis.org>
Subject: [PATCH v5 0/7] Avoid parsing tracepoint format just for id
The tracepoint format isn't needed to open an event, just the id for
the config value. Refactor the use of evsel->tp_format to use an
accessor that will lazily construct its value. In evsel__newtp_idx
read the id so the config value can be set up/used.
This allows tracepoints to be used without libtraceevent in a number
of tests. Other functionality is enabled without libtracevent, such as
mapping a tracepoint id back to its name. There may be some
performance benefit to code using tracepoints but not using the format
information.
v5. Add perf env fixed found by Namhyung.
v4. Rebase due to conflict with 9ac98662dbd3 ("perf: event: Remove deadcode")
v3. Whitespace changes, Arnaldo.
v2. Add additional error checking/handling in evsel__tp_format.
Ian Rogers (7):
perf env: Ensure failure broken topology file reads are always -1
encoded
tool api fs: Correctly encode errno for read/write open failures
perf trace-event: Constify print arguments
perf trace-event: Always build trace-event-info.c
perf evsel: Add/use accessor for tp_format
perf evsel: Allow evsel__newtp without libtraceevent
perf tests: Enable tests disabled due to tracepoint parsing
tools/lib/api/fs/fs.c | 6 +-
tools/perf/builtin-kmem.c | 12 +-
tools/perf/builtin-kwork.c | 3 +-
tools/perf/builtin-record.c | 2 -
tools/perf/builtin-script.c | 9 +-
tools/perf/builtin-trace.c | 79 +++++++++----
tools/perf/tests/Build | 6 +-
tools/perf/tests/builtin-test.c | 2 -
tools/perf/tests/parse-events.c | 25 +---
tools/perf/util/Build | 2 +-
tools/perf/util/data-convert-bt.c | 10 +-
tools/perf/util/data-convert-json.c | 8 +-
tools/perf/util/env.c | 9 +-
tools/perf/util/evsel.c | 110 +++++++++++++-----
tools/perf/util/evsel.h | 9 +-
tools/perf/util/evsel_fprintf.c | 4 +-
tools/perf/util/parse-events.c | 16 +--
tools/perf/util/perf_event_attr_fprintf.c | 4 -
.../util/scripting-engines/trace-event-perl.c | 3 +-
.../scripting-engines/trace-event-python.c | 3 +-
tools/perf/util/sort.c | 33 ++++--
tools/perf/util/trace-event-parse.c | 2 +-
tools/perf/util/trace-event-scripting.c | 10 +-
tools/perf/util/trace-event.h | 2 +-
24 files changed, 220 insertions(+), 149 deletions(-)
--
2.47.0.338.g60cca15819-goog
Powered by blists - more mailing lists