Make sure to drop the reference taken when looking up the PMU device and its regmap.
Note that holding a reference to a device does not prevent its regmap from going away so there is no point in keeping the reference.
Fixes: 0b7c6075022c ("soc: samsung: exynos-pmu: Add regmap support for SoCs that protect PMU regs") Cc: stable@vger.kernel.org # 6.9 Cc: Peter Griffin peter.griffin@linaro.org Signed-off-by: Johan Hovold johan@kernel.org --- drivers/soc/samsung/exynos-pmu.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/drivers/soc/samsung/exynos-pmu.c b/drivers/soc/samsung/exynos-pmu.c index 22c50ca2aa79..ba4de8194a0e 100644 --- a/drivers/soc/samsung/exynos-pmu.c +++ b/drivers/soc/samsung/exynos-pmu.c @@ -346,6 +346,8 @@ struct regmap *exynos_get_pmu_regmap_by_phandle(struct device_node *np, if (!dev) return ERR_PTR(-EPROBE_DEFER);
+ put_device(dev); + return syscon_node_to_regmap(pmu_np); } EXPORT_SYMBOL_GPL(exynos_get_pmu_regmap_by_phandle);
On 21/11/2025 13:18, Johan Hovold wrote:
Make sure to drop the reference taken when looking up the PMU device and its regmap.
Note that holding a reference to a device does not prevent its regmap from going away so there is no point in keeping the reference.
Thanks for the patch, it's 3rd or fourth try from LKML on that, but you were the only one actually really reading the code instead of sprinking puts all around.
Fixes: 0b7c6075022c ("soc: samsung: exynos-pmu: Add regmap support for SoCs that protect PMU regs") Cc: stable@vger.kernel.org # 6.9
Fix is fine, but unfortunately the code in v6.9 was different and I believe keeping dev reference made sense there - driver was relying on drvdata. While the leak was there as well, it was intentional. I think the leak can be fixed only since commit 35d6b98c625867209bc47df99cf03edf4280799f .
Best regards, Krzysztof
On Fri, Nov 21, 2025 at 01:59:59PM +0100, Krzysztof Kozlowski wrote:
On 21/11/2025 13:18, Johan Hovold wrote:
Make sure to drop the reference taken when looking up the PMU device and its regmap.
Note that holding a reference to a device does not prevent its regmap from going away so there is no point in keeping the reference.
Fixes: 0b7c6075022c ("soc: samsung: exynos-pmu: Add regmap support for SoCs that protect PMU regs") Cc: stable@vger.kernel.org # 6.9
Fix is fine, but unfortunately the code in v6.9 was different and I believe keeping dev reference made sense there - driver was relying on drvdata. While the leak was there as well, it was intentional. I think the leak can be fixed only since commit 35d6b98c625867209bc47df99cf03edf4280799f .
It makes no difference actually as holding a reference to a device does not prevent its driver data from going away either.
Johan
linux-stable-mirror@lists.linaro.org