[PATCH 03/20] ASoC: samsung: snow: Fix clock leak in snow_probe()
From: Wentao Liang
Date: Wed Sep 16 2026 - 03:07:52 EST
In snow_probe(), priv->clk_i2s_bus is acquired via of_clk_get_by_name().
If devm_snd_soc_register_card() subsequently fails, the acquired clock
is never released, leading to a reference count leak.
Add clk_put() on the error path to release the clock properly.
Fixes: aff8d2bed9e5 ("ASoC: samsung: Add HDMI audio support for Snow")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Wentao Liang <vulab@xxxxxxxxxxx>
---
sound/soc/samsung/snow.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/sound/soc/samsung/snow.c b/sound/soc/samsung/snow.c
index 66ef49dff1ba..ad99c153e9f8 100644
--- a/sound/soc/samsung/snow.c
+++ b/sound/soc/samsung/snow.c
@@ -211,9 +211,11 @@ static int snow_probe(struct platform_device *pdev)
snd_soc_card_set_drvdata(card, priv);
ret = devm_snd_soc_register_card(dev, card);
- if (ret)
+ if (ret) {
+ clk_put(priv->clk_i2s_bus);
return dev_err_probe(&pdev->dev, ret,
"snd_soc_register_card failed\n");
+ }
return 0;
}
--
2.34.1