mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 05:55:44 +02:00
media: cedrus: fix reference leak in cedrus_start_streaming
[ Upstream commit940727bf22] pm_runtime_get_sync will increment pm usage counter even it failed. Forgetting to pm_runtime_put_noidle will result in reference leak in cedrus_start_streaming. We should fix it. Fixes:d5aecd289b("media: cedrus: Implement runtime PM") 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> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
d5b2529aa5
commit
a3307503af
|
|
@ -479,8 +479,10 @@ static int cedrus_start_streaming(struct vb2_queue *vq, unsigned int count)
|
|||
|
||||
if (V4L2_TYPE_IS_OUTPUT(vq->type)) {
|
||||
ret = pm_runtime_get_sync(dev->dev);
|
||||
if (ret < 0)
|
||||
if (ret < 0) {
|
||||
pm_runtime_put_noidle(dev->dev);
|
||||
goto err_cleanup;
|
||||
}
|
||||
|
||||
if (dev->dec_ops[ctx->current_codec]->start) {
|
||||
ret = dev->dec_ops[ctx->current_codec]->start(ctx);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user