Make sure to check the pmu type first and then check event->attr.disabled.
Doing so would avoid reading the disabled attribute of an event that is
not handled by TAD PMU.
Signed-off-by: Tanmay Jagdale <[email protected]>
---
drivers/perf/marvell_cn10k_tad_pmu.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/perf/marvell_cn10k_tad_pmu.c b/drivers/perf/marvell_cn10k_tad_pmu.c
index ee67305f822d..282d3a071a67 100644
--- a/drivers/perf/marvell_cn10k_tad_pmu.c
+++ b/drivers/perf/marvell_cn10k_tad_pmu.c
@@ -146,12 +146,12 @@ static int tad_pmu_event_init(struct perf_event *event)
{
struct tad_pmu *tad_pmu = to_tad_pmu(event->pmu);
- if (!event->attr.disabled)
- return -EINVAL;
-
if (event->attr.type != event->pmu->type)
return -ENOENT;
+ if (!event->attr.disabled)
+ return -EINVAL;
+
if (event->state != PERF_EVENT_STATE_OFF)
return -EINVAL;
--
2.25.1
On Tue, 10 May 2022 15:56:57 +0530, Tanmay Jagdale wrote:
> Make sure to check the pmu type first and then check event->attr.disabled.
> Doing so would avoid reading the disabled attribute of an event that is
> not handled by TAD PMU.
>
>
Applied to will (for-next/perf), thanks!
[1/1] perf/marvell_cn10k: Fix tad_pmu_event_init() to check pmu type first
https://git.kernel.org/will/c/33835e8dfb3c
Cheers,
--
Will
https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev