diff options
| author | Ian Rogers <irogers@google.com> | 2024-10-01 20:20:07 -0700 |
|---|---|---|
| committer | Namhyung Kim <namhyung@kernel.org> | 2024-10-10 23:40:32 -0700 |
| commit | 240505b2d0adcdc8fd018117e88dc27b09734735 (patch) | |
| tree | e0406e4799a31f8bafb6a8ca4bf9880f5c02c374 /tools/perf/util/pmu.h | |
| parent | perf parse-events: Expose/rename config_term_name (diff) | |
| download | linux-240505b2d0adcdc8fd018117e88dc27b09734735.tar.gz linux-240505b2d0adcdc8fd018117e88dc27b09734735.zip | |
perf tool_pmu: Factor tool events into their own PMU
Rather than treat tool events as a special kind of event, create a
tool only PMU where the events/aliases match the existing
duration_time, user_time and system_time events. Remove special
parsing and printing support for the tool events, but add function
calls for when PMU functions are called on a tool_pmu.
Move the tool PMU code in evsel into tool_pmu.c to better encapsulate
the tool event behavior in that file.
Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20241002032016.333748-5-irogers@google.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Diffstat (limited to 'tools/perf/util/pmu.h')
| -rw-r--r-- | tools/perf/util/pmu.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/perf/util/pmu.h b/tools/perf/util/pmu.h index c70317d3fb04..36fced2bf065 100644 --- a/tools/perf/util/pmu.h +++ b/tools/perf/util/pmu.h @@ -37,6 +37,7 @@ struct perf_pmu_caps { }; enum { + PERF_PMU_TYPE_TOOL = 0xFFFFFFFE, PERF_PMU_TYPE_FAKE = 0xFFFFFFFF, }; @@ -282,6 +283,7 @@ struct perf_pmu *perf_pmu__lookup(struct list_head *pmus, int dirfd, const char struct perf_pmu *perf_pmu__create_placeholder_core_pmu(struct list_head *core_pmus); void perf_pmu__delete(struct perf_pmu *pmu); struct perf_pmu *perf_pmus__find_core_pmu(void); + const char *perf_pmu__name_from_config(struct perf_pmu *pmu, u64 config); bool perf_pmu__is_fake(const struct perf_pmu *pmu); |
