[PATCH] media: venus: vdec: Fix runtime PM imbalance in vdec_open

From: Dinghao Liu
Date: Fri May 22 2020 - 07:14:15 EST


pm_runtime_get_sync() increments the runtime PM usage counter even
when it 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@xxxxxxxxxx>
---
drivers/media/platform/qcom/venus/vdec.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/media/platform/qcom/venus/vdec.c b/drivers/media/platform/qcom/venus/vdec.c
index 4ed2628585a1..6f2964130728 100644
--- a/drivers/media/platform/qcom/venus/vdec.c
+++ b/drivers/media/platform/qcom/venus/vdec.c
@@ -1349,7 +1349,7 @@ static int vdec_open(struct file *file)

ret = pm_runtime_get_sync(core->dev_dec);
if (ret < 0)
- goto err_free_inst;
+ goto err_put_sync;

ret = vdec_ctrl_init(inst);
if (ret)
@@ -1394,7 +1394,6 @@ static int vdec_open(struct file *file)
vdec_ctrl_deinit(inst);
err_put_sync:
pm_runtime_put_sync(core->dev_dec);
-err_free_inst:
kfree(inst);
return ret;
}
--
2.17.1