mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 05:55:44 +02:00
ASoC: mt6797-mt6351: Fix refcount leak in mt6797_mt6351_dev_probe
[ Upstream commit7472eb8d7d] of_parse_phandle() returns a node pointer with refcount incremented, we should use of_node_put() on it when not need anymore. Add missing of_node_put() to avoid refcount leak. Fixes:f0ab0bf250("ASoC: add mt6797-mt6351 driver and config option") Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Link: https://lore.kernel.org/r/20220603083417.9011-1-linmq006@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
aa1214ece3
commit
a0381a9f3e
|
|
@ -217,7 +217,8 @@ static int mt6797_mt6351_dev_probe(struct platform_device *pdev)
|
||||||
if (!codec_node) {
|
if (!codec_node) {
|
||||||
dev_err(&pdev->dev,
|
dev_err(&pdev->dev,
|
||||||
"Property 'audio-codec' missing or invalid\n");
|
"Property 'audio-codec' missing or invalid\n");
|
||||||
return -EINVAL;
|
ret = -EINVAL;
|
||||||
|
goto put_platform_node;
|
||||||
}
|
}
|
||||||
for_each_card_prelinks(card, i, dai_link) {
|
for_each_card_prelinks(card, i, dai_link) {
|
||||||
if (dai_link->codecs->name)
|
if (dai_link->codecs->name)
|
||||||
|
|
@ -230,6 +231,9 @@ static int mt6797_mt6351_dev_probe(struct platform_device *pdev)
|
||||||
dev_err(&pdev->dev, "%s snd_soc_register_card fail %d\n",
|
dev_err(&pdev->dev, "%s snd_soc_register_card fail %d\n",
|
||||||
__func__, ret);
|
__func__, ret);
|
||||||
|
|
||||||
|
of_node_put(codec_node);
|
||||||
|
put_platform_node:
|
||||||
|
of_node_put(platform_node);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user