ASoC: imx-hdmi: Fix refcount leak in imx_hdmi_probe
authorMiaoqian Lin <linmq006@gmail.com>
Wed, 11 May 2022 05:27:40 +0000 (09:27 +0400)
committerMark Brown <broonie@kernel.org>
Wed, 11 May 2022 16:42:11 +0000 (17:42 +0100)
of_find_device_by_node() takes reference, we should use put_device()
to release it. when devm_kzalloc() fails, it doesn't have a
put_device(), it will cause refcount leak.
Add missing put_device() to fix this.

Fixes: 6a5f850aa83a ("ASoC: fsl: Add imx-hdmi machine driver")
Fixes: f670b274f7f6 ("ASoC: imx-hdmi: add put_device() after of_find_device_by_node()")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20220511052740.46903-1-linmq006@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/imx-hdmi.c

index 2ae1a889c68d5f2b4ed48bb33e17a2611fc76661..a780cf5a65ffa1aa0ceafe6ef26b983b50eaa1d5 100644 (file)
@@ -127,6 +127,7 @@ static int imx_hdmi_probe(struct platform_device *pdev)
        data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL);
        if (!data) {
                ret = -ENOMEM;
+               put_device(&cpu_pdev->dev);
                goto fail;
        }