mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-07-06 00:13:38 -04:00
perf: provide sysfs_show for struct perf_pmu_events_attr
(struct perf_pmu_events_attr) is defined in include/linux/perf_event.h, but the only "show" for it is in x86 and contains x86 specific stuff. Make a generic one for those of us who are just using the event_str. Signed-off-by: Cody P Schafer <cody@linux.vnet.ibm.com> Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com> Acked-by: Jiri Olsa <jolsa@redhat.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
fe12545e76
commit
fd979c0132
2 changed files with 15 additions and 0 deletions
|
@ -897,6 +897,9 @@ struct perf_pmu_events_attr {
|
||||||
const char *event_str;
|
const char *event_str;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
ssize_t perf_event_sysfs_show(struct device *dev, struct device_attribute *attr,
|
||||||
|
char *page);
|
||||||
|
|
||||||
#define PMU_EVENT_ATTR(_name, _var, _id, _show) \
|
#define PMU_EVENT_ATTR(_name, _var, _id, _show) \
|
||||||
static struct perf_pmu_events_attr _var = { \
|
static struct perf_pmu_events_attr _var = { \
|
||||||
.attr = __ATTR(_name, 0444, _show, NULL), \
|
.attr = __ATTR(_name, 0444, _show, NULL), \
|
||||||
|
|
|
@ -8276,6 +8276,18 @@ void __init perf_event_init(void)
|
||||||
!= 1024);
|
!= 1024);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ssize_t perf_event_sysfs_show(struct device *dev, struct device_attribute *attr,
|
||||||
|
char *page)
|
||||||
|
{
|
||||||
|
struct perf_pmu_events_attr *pmu_attr =
|
||||||
|
container_of(attr, struct perf_pmu_events_attr, attr);
|
||||||
|
|
||||||
|
if (pmu_attr->event_str)
|
||||||
|
return sprintf(page, "%s\n", pmu_attr->event_str);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int __init perf_event_sysfs_init(void)
|
static int __init perf_event_sysfs_init(void)
|
||||||
{
|
{
|
||||||
struct pmu *pmu;
|
struct pmu *pmu;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue