ASoC: mediatek: mt8195: Add missing of_node_put()
authorBixuan Cui <cuibixuan@huawei.com>
Sat, 11 Sep 2021 08:12:46 +0000 (16:12 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Nov 2021 08:48:24 +0000 (09:48 +0100)
[ Upstream commit b2fc2c92d2fd34d93268f677e514936f50dd6b5c ]

The platform_node is returned by of_parse_phandle() should have
of_node_put() before return.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Bixuan Cui <cuibixuan@huawei.com>
Link: https://lore.kernel.org/r/20210911081246.33867-1-cuibixuan@huawei.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/mediatek/mt8195/mt8195-mt6359-rt1019-rt5682.c

index de09f67c04502207a878f22d8348da9a1940877f..a3fa8efc8f81c407698400cf556a1c6158c08e0e 100644 (file)
@@ -1040,8 +1040,10 @@ static int mt8195_mt6359_rt1019_rt5682_dev_probe(struct platform_device *pdev)
        }
 
        priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
-       if (!priv)
+       if (!priv) {
+               of_node_put(platform_node);
                return -ENOMEM;
+       }
 
        snd_soc_card_set_drvdata(card, priv);
 
@@ -1049,6 +1051,8 @@ static int mt8195_mt6359_rt1019_rt5682_dev_probe(struct platform_device *pdev)
        if (ret)
                dev_err(&pdev->dev, "%s snd_soc_register_card fail %d\n",
                        __func__, ret);
+
+       of_node_put(platform_node);
        return ret;
 }