Commit 89c0a55e authored by Ian Rogers's avatar Ian Rogers Committed by Arnaldo Carvalho de Melo

perf pmu: To info add event_type_desc

All PMU events are assumed to be "Kernel PMU event", however, this
isn't true for fake PMUs and won't be true with the addition of more
software PMUs. Make the PMU's type description name configurable -
largely for printing callbacks.
Signed-off-by: default avatarIan Rogers <irogers@google.com>
Link: https://lore.kernel.org/r/20240907050830.6752-5-irogers@google.com
Cc: Ravi Bangoria <ravi.bangoria@amd.com>
Cc: Sandipan Das <sandipan.das@amd.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Yang Jihong <yangjihong@bytedance.com>
Cc: Dominique Martinet <asmadeus@codewreck.org>
Cc: Clément Le Goffic <clement.legoffic@foss.st.com>
Cc: Colin Ian King <colin.i.king@gmail.com>
Cc: Howard Chu <howardchu95@gmail.com>
Cc: Ze Gao <zegao2021@gmail.com>
Cc: Yicong Yang <yangyicong@hisilicon.com>
Cc: Changbin Du <changbin.du@huawei.com>
Cc: Junhao He <hejunhao3@huawei.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Weilin Wang <weilin.wang@intel.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Will Deacon <will@kernel.org>
Cc: James Clark <james.clark@linaro.org>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Jing Zhang <renyu.zj@linux.alibaba.com>
Cc: Leo Yan <leo.yan@linux.dev>
Cc: Oliver Upton <oliver.upton@linux.dev>
Cc: Benjamin Gray <bgray@linux.ibm.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Athira Jajeev <atrajeev@linux.vnet.ibm.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: Sun Haiyong <sunhaiyong@loongson.cn>
Cc: Tiezhu Yang <yangtiezhu@loongson.cn>
Cc: Xu Yang <xu.yang_2@nxp.com>
Cc: John Garry <john.g.garry@oracle.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Veronika Molnarova <vmolnaro@redhat.com>
Cc: Dr. David Alan Gilbert <linux@treblig.org>
Cc: linux-kernel@vger.kernel.org
Cc: linux-perf-users@vger.kernel.org
Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent f08cc258
...@@ -1856,6 +1856,7 @@ int perf_pmu__for_each_event(struct perf_pmu *pmu, bool skip_duplicate_pmus, ...@@ -1856,6 +1856,7 @@ int perf_pmu__for_each_event(struct perf_pmu *pmu, bool skip_duplicate_pmus,
struct perf_pmu_alias *event; struct perf_pmu_alias *event;
struct pmu_event_info info = { struct pmu_event_info info = {
.pmu = pmu, .pmu = pmu,
.event_type_desc = "Kernel PMU event",
}; };
int ret = 0; int ret = 0;
struct strbuf sb; struct strbuf sb;
......
...@@ -194,6 +194,7 @@ struct pmu_event_info { ...@@ -194,6 +194,7 @@ struct pmu_event_info {
const char *encoding_desc; const char *encoding_desc;
const char *topic; const char *topic;
const char *pmu_name; const char *pmu_name;
const char *event_type_desc;
const char *str; const char *str;
bool deprecated; bool deprecated;
}; };
......
...@@ -371,6 +371,7 @@ struct sevent { ...@@ -371,6 +371,7 @@ struct sevent {
const char *encoding_desc; const char *encoding_desc;
const char *topic; const char *topic;
const char *pmu_name; const char *pmu_name;
const char *event_type_desc;
bool deprecated; bool deprecated;
}; };
...@@ -444,6 +445,7 @@ static int perf_pmus__print_pmu_events__callback(void *vstate, ...@@ -444,6 +445,7 @@ static int perf_pmus__print_pmu_events__callback(void *vstate,
COPY_STR(encoding_desc); COPY_STR(encoding_desc);
COPY_STR(topic); COPY_STR(topic);
COPY_STR(pmu_name); COPY_STR(pmu_name);
COPY_STR(event_type_desc);
#undef COPY_STR #undef COPY_STR
s->deprecated = info->deprecated; s->deprecated = info->deprecated;
state->index++; state->index++;
...@@ -498,7 +500,7 @@ void perf_pmus__print_pmu_events(const struct print_callbacks *print_cb, void *p ...@@ -498,7 +500,7 @@ void perf_pmus__print_pmu_events(const struct print_callbacks *print_cb, void *p
aliases[j].alias, aliases[j].alias,
aliases[j].scale_unit, aliases[j].scale_unit,
aliases[j].deprecated, aliases[j].deprecated,
"Kernel PMU event", aliases[j].event_type_desc,
aliases[j].desc, aliases[j].desc,
aliases[j].long_desc, aliases[j].long_desc,
aliases[j].encoding_desc); aliases[j].encoding_desc);
...@@ -511,6 +513,7 @@ void perf_pmus__print_pmu_events(const struct print_callbacks *print_cb, void *p ...@@ -511,6 +513,7 @@ void perf_pmus__print_pmu_events(const struct print_callbacks *print_cb, void *p
zfree(&aliases[j].encoding_desc); zfree(&aliases[j].encoding_desc);
zfree(&aliases[j].topic); zfree(&aliases[j].topic);
zfree(&aliases[j].pmu_name); zfree(&aliases[j].pmu_name);
zfree(&aliases[j].event_type_desc);
} }
if (printed && pager_in_use()) if (printed && pager_in_use())
printf("\n"); printf("\n");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment