aboutsummaryrefslogtreecommitdiff
path: root/drivers/staging/media
diff options
context:
space:
mode:
authorZhang Qilong <zhangqilong3@huawei.com>2020-11-02 15:28:52 +0100
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>2020-11-16 10:31:16 +0100
commit4cbbe2aaa0536b0e7b3dfbd7febc3bc2ec300559 (patch)
treec7c04b1d621814a0ac0d32e6b6f5010efc8176d9 /drivers/staging/media
parent652ce6769349e669e1514093a83dd913cc9b5039 (diff)
media: staging: rkisp1: cap: fix runtime PM imbalance on error
pm_runtime_get_sync will increment pm usage counter even it failed. Forgetting to pm_runtime_put_noidle will result in reference imbalance in rkisp1_vb2_start_streaming, so we should fix it. Fixes: 56e3b29f9f6b2 ("media: staging: rkisp1: add streaming paths") Signed-off-by: Zhang Qilong <zhangqilong3@huawei.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'drivers/staging/media')
-rw-r--r--drivers/staging/media/rkisp1/rkisp1-capture.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/staging/media/rkisp1/rkisp1-capture.c b/drivers/staging/media/rkisp1/rkisp1-capture.c
index a7a013204177..6d2fd27970f2 100644
--- a/drivers/staging/media/rkisp1/rkisp1-capture.c
+++ b/drivers/staging/media/rkisp1/rkisp1-capture.c
@@ -1005,6 +1005,7 @@ rkisp1_vb2_start_streaming(struct vb2_queue *queue, unsigned int count)
ret = pm_runtime_get_sync(cap->rkisp1->dev);
if (ret < 0) {
+ pm_runtime_put_noidle(cap->rkisp1->dev);
dev_err(cap->rkisp1->dev, "power up failed %d\n", ret);
goto err_destroy_dummy;
}