]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
perf/imx_ddr: Fix cpu hotplug state cleanup
authorLeonard Crestez <leonard.crestez@nxp.com>
Tue, 14 Jan 2020 20:25:46 +0000 (22:25 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Feb 2020 07:38:30 +0000 (08:38 +0100)
commit4c6a908ed7d55074aa334abe235ddee383c3a7f9
treec4942ea13ab8d5cee1ba4477e6290be3c7917d58
parent4f8d534fb4eb64c5dea74863b007d9b51345070a
perf/imx_ddr: Fix cpu hotplug state cleanup

[ Upstream commit 9ee68b314e9aa63ed11b98beb8a68810b8234dcf ]

This driver allocates a dynamic cpu hotplug state but never releases it.
If reloaded in a loop it will quickly trigger a WARN message:

"No more dynamic states available for CPU hotplug"

Fix by calling cpuhp_remove_multi_state on remove like several other
perf pmu drivers.

Also fix the cleanup logic on probe error paths: add the missing
cpuhp_remove_multi_state call and properly check the return value from
cpuhp_state_add_instant_nocalls.

Fixes: 9a66d36cc7ac ("drivers/perf: imx_ddr: Add DDR performance counter support to perf")
Acked-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/perf/fsl_imx8_ddr_perf.c