Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 98680180 authored by Sylwester Nawrocki's avatar Sylwester Nawrocki Committed by Mauro Carvalho Chehab
Browse files

[media] exynos-gsc: Don't use mutex_lock_interruptible() in device release()



Use uninterruptible mutex_lock in the release() file op to make
sure all resources are properly freed when a process is being
terminated. Returning -ERESTARTSYS has no effect for a terminating
process and this may cause driver resources not to be released.

Reported-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent ddc43d6d
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -657,8 +657,7 @@ static int gsc_m2m_release(struct file *file)
	pr_debug("pid: %d, state: 0x%lx, refcnt= %d",
		task_pid_nr(current), gsc->state, gsc->m2m.refcnt);

	if (mutex_lock_interruptible(&gsc->lock))
		return -ERESTARTSYS;
	mutex_lock(&gsc->lock);

	v4l2_m2m_ctx_release(ctx->m2m_ctx);
	gsc_ctrls_delete(ctx);