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