diff options
author | Dinghao Liu <dinghao.liu@zju.edu.cn> | 2020-05-27 16:43:24 +0800 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-05-27 14:48:53 +0100 |
commit | 53865b3259554389e40aeead392151c819b52a71 (patch) | |
tree | 2fa41a2776f243ce75dc00cb3b6d5c887132af2d /sound | |
parent | 3c35e79cead31c3bd79875ae90f9655dc77ad13c (diff) | |
download | linux-stable-53865b3259554389e40aeead392151c819b52a71.tar.gz linux-stable-53865b3259554389e40aeead392151c819b52a71.tar.bz2 linux-stable-53865b3259554389e40aeead392151c819b52a71.zip |
ASoC: img-spdif-in: Fix runtime PM imbalance on error
pm_runtime_get_sync() increments the runtime PM usage counter even
the call returns an error code. Thus a pairing decrement is needed
on the error handling path to keep the counter balanced.
Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn>
Link: https://lore.kernel.org/r/20200527084326.4131-1-dinghao.liu@zju.edu.cn
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/img/img-spdif-in.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sound/soc/img/img-spdif-in.c b/sound/soc/img/img-spdif-in.c index fd639f4d082b..46ff8a3621d5 100644 --- a/sound/soc/img/img-spdif-in.c +++ b/sound/soc/img/img-spdif-in.c @@ -753,8 +753,10 @@ static int img_spdif_in_probe(struct platform_device *pdev) goto err_pm_disable; } ret = pm_runtime_get_sync(&pdev->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_noidle(&pdev->dev); goto err_suspend; + } rst = devm_reset_control_get_exclusive(&pdev->dev, "rst"); if (IS_ERR(rst)) { |