From: Qiushi Wu <wu000...@umn.edu>

[ Upstream commit 25bf943e4e7b47282bd86ae7d39e039217ebb007 ]

Function "pm_runtime_get_sync()" is not handled by "pm_runtime_put()"
if "PTR_ERR(rst) == -EPROBE_DEFER". Fix this issue by adding
"pm_runtime_put()" into this error path.

Fixes: f65bb92ca12e ("ASoC: img-i2s-in: Add runtime PM")
Signed-off-by: Qiushi Wu <wu000...@umn.edu>
Link: https://lore.kernel.org/r/20200525055011.31925-1-wu000...@umn.edu
Signed-off-by: Mark Brown <broo...@kernel.org>
Signed-off-by: Sasha Levin <sas...@kernel.org>
---
 sound/soc/img/img-i2s-in.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sound/soc/img/img-i2s-in.c b/sound/soc/img/img-i2s-in.c
index fdd2c73fd2fac..869fe0068cbd3 100644
--- a/sound/soc/img/img-i2s-in.c
+++ b/sound/soc/img/img-i2s-in.c
@@ -482,6 +482,7 @@ static int img_i2s_in_probe(struct platform_device *pdev)
        if (IS_ERR(rst)) {
                if (PTR_ERR(rst) == -EPROBE_DEFER) {
                        ret = -EPROBE_DEFER;
+                       pm_runtime_put(&pdev->dev);
                        goto err_suspend;
                }
 
-- 
2.25.1



Reply via email to