[PATCH -next] ASoC: rockchip: Fix PM usage reference of rockchip_i2s_tdm_resume

Nicolas Frattaroli frattaroli.nicolas at gmail.com
Wed Mar 16 12:06:38 PDT 2022


On Dienstag, 15. März 2022 03:54:15 CET zhangqilong wrote:
> pm_runtime_get_sync will increment pm usage counter
> even it failed. Forgetting to putting operation will
> result in reference leak here. We fix it by replacing
> it with pm_runtime_resume_and_get to keep usage counter
> balanced.
> 
> Fixes:081068fd64140 ("ASoC: rockchip: add support for i2s-tdm controller")
> Signed-off-by: Zhang Qilong <zhangqilong3 at huawei.com>

Hello,

Reviewed-by: Nicolas Frattaroli <frattaroli.nicolas at gmail.com>

Thank you for fixing this!

Regards,
Nicolas Frattaroli

> ---
>  sound/soc/rockchip/rockchip_i2s_tdm.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/soc/rockchip/rockchip_i2s_tdm.c b/sound/soc/rockchip/rockchip_i2s_tdm.c
> index 5f9cb5c4c7f0..d3b710406941 100644
> --- a/sound/soc/rockchip/rockchip_i2s_tdm.c
> +++ b/sound/soc/rockchip/rockchip_i2s_tdm.c
> @@ -1738,7 +1738,7 @@ static int __maybe_unused rockchip_i2s_tdm_resume(struct device *dev)
>  	struct rk_i2s_tdm_dev *i2s_tdm = dev_get_drvdata(dev);
>  	int ret;
>  
> -	ret = pm_runtime_get_sync(dev);
> +	ret = pm_runtime_resume_and_get(dev);
>  	if (ret < 0)
>  		return ret;
>  	ret = regcache_sync(i2s_tdm->regmap);
> 







More information about the Linux-rockchip mailing list