]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
perf/arm_cspmu: Fix event attribute type
authorRobin Murphy <robin.murphy@arm.com>
Mon, 5 Jun 2023 17:01:31 +0000 (18:01 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 11 Jul 2023 17:39:24 +0000 (19:39 +0200)
[ Upstream commit 71e0cb32d5fc61468e83ed962379af71bba8237e ]

ARM_CSPMU_EVENT_ATTR() defines a struct perf_pmu_events_attr, so
arm_cspmu_sysfs_event_show() should not be interpreting it as struct
dev_ext_attribute.

Fixes: e37dfd65731d ("perf: arm_cspmu: Add support for ARM CoreSight PMU driver")
Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Reviewed-and-tested-by: Ilkka Koskinen <ilkka@os.amperecomputing.com>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/27c0804af64007b2400abbc40278f642ee6a0a29.1685983270.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/perf/arm_cspmu/arm_cspmu.c

index c1b6f4bdb04af36515db46371fa0bc485c202c05..35d2fe33a7b6f7cdbac048d716b3a20f8793400d 100644 (file)
@@ -189,10 +189,10 @@ static inline bool use_64b_counter_reg(const struct arm_cspmu *cspmu)
 ssize_t arm_cspmu_sysfs_event_show(struct device *dev,
                                struct device_attribute *attr, char *buf)
 {
-       struct dev_ext_attribute *eattr =
-               container_of(attr, struct dev_ext_attribute, attr);
-       return sysfs_emit(buf, "event=0x%llx\n",
-                         (unsigned long long)eattr->var);
+       struct perf_pmu_events_attr *pmu_attr;
+
+       pmu_attr = container_of(attr, typeof(*pmu_attr), attr);
+       return sysfs_emit(buf, "event=0x%llx\n", pmu_attr->id);
 }
 EXPORT_SYMBOL_GPL(arm_cspmu_sysfs_event_show);