staging: greybus: codecs: Fix reference counter leak in error handling
authorZhang Qilong <zhangqilong3@huawei.com>
Mon, 9 Nov 2020 13:13:46 +0000 (21:13 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 30 Dec 2020 10:53:09 +0000 (11:53 +0100)
commit63c4e010a53066fa8530ffd21324ebcdb7b0d87b
tree065a277dbe7b9072e29fedf15a40ecb74a2aa3bd
parente4e1f57c6afb6b41e80f677ad1defc0bdf138ae5
staging: greybus: codecs: Fix reference counter leak in error handling

[ Upstream commit 3952659a6108f77a0d062d8e8487bdbdaf52a66c ]

gb_pm_runtime_get_sync has increased the usage counter of the device here.
Forgetting to call gb_pm_runtime_put_noidle will result in usage counter
leak in the error branch of (gbcodec_hw_params and gbcodec_prepare). We
fixed it by adding it.

Fixes: c388ae7696992 ("greybus: audio: Update pm runtime support in dai_ops callback")
Signed-off-by: Zhang Qilong <zhangqilong3@huawei.com>
Link: https://lore.kernel.org/r/20201109131347.1725288-2-zhangqilong3@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/staging/greybus/audio_codec.c