media: st-delta: Fix reference count leak in delta_run_work

[ Upstream commit 57cc666d36 ]

delta_run_work() calls delta_get_sync() that increments
the reference counter. In case of failure, decrement the reference
count by calling delta_put_autosuspend().

Signed-off-by: Aditya Pakki <pakki001@umn.edu>
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:
Aditya Pakki 2020-06-14 05:58:41 +02:00 committed by Greg Kroah-Hartman
parent d310c7437c
commit e4d4abe6e8
1 changed files with 3 additions and 1 deletions

View File

@ -954,8 +954,10 @@ static void delta_run_work(struct work_struct *work)
/* enable the hardware */
if (!dec->pm) {
ret = delta_get_sync(ctx);
if (ret)
if (ret) {
delta_put_autosuspend(ctx);
goto err;
}
}
/* decode this access unit */