]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
memory: mtk-smi: fix device leak on larb probe
authorJohan Hovold <johan@kernel.org>
Fri, 21 Nov 2025 16:46:23 +0000 (17:46 +0100)
committerKrzysztof Kozlowski <krzk@kernel.org>
Tue, 16 Dec 2025 07:20:52 +0000 (08:20 +0100)
Make sure to drop the reference taken when looking up the SMI device
during larb probe on late probe failure (e.g. probe deferral) and on
driver unbind.

Fixes: cc8bbe1a8312 ("memory: mediatek: Add SMI driver")
Fixes: 038ae37c510f ("memory: mtk-smi: add missing put_device() call in mtk_smi_device_link_common")
Cc: stable@vger.kernel.org # 4.6: 038ae37c510f
Cc: stable@vger.kernel.org # 4.6
Cc: Yong Wu <yong.wu@mediatek.com>
Cc: Miaoqian Lin <linmq006@gmail.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
Link: https://patch.msgid.link/20251121164624.13685-3-johan@kernel.org
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
drivers/memory/mtk-smi.c

index dd6150d200e89d12d7c8466347ee76a93b72630e..3609bfd3c64be32f9206fd248705e580221f471f 100644 (file)
@@ -685,6 +685,7 @@ static void mtk_smi_larb_remove(struct platform_device *pdev)
        device_link_remove(&pdev->dev, larb->smi_common_dev);
        pm_runtime_disable(&pdev->dev);
        component_del(&pdev->dev, &mtk_smi_larb_component_ops);
+       put_device(larb->smi_common_dev);
 }
 
 static int __maybe_unused mtk_smi_larb_resume(struct device *dev)