From 228b791bfd52f437fd9a04fe9432dfec9c0d0333 Mon Sep 17 00:00:00 2001 From: Hans Verkuil Date: Wed, 10 Apr 2013 08:05:00 -0300 Subject: [PATCH] [media] dt3155v4l: fix incorrect mutex locking A mutex_unlock was missing in the 'success' path of the open() call, and also at one error path in the same function. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab --- drivers/staging/media/dt3155v4l/dt3155v4l.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/staging/media/dt3155v4l/dt3155v4l.c b/drivers/staging/media/dt3155v4l/dt3155v4l.c index 073b3b3..57fadea 100644 --- a/drivers/staging/media/dt3155v4l/dt3155v4l.c +++ b/drivers/staging/media/dt3155v4l/dt3155v4l.c @@ -398,7 +398,7 @@ dt3155_open(struct file *filp) pd->field_count = 0; ret = vb2_queue_init(pd->q); if (ret < 0) - return ret; + goto err_request_irq; INIT_LIST_HEAD(&pd->dmaq); spin_lock_init(&pd->lock); /* disable all irqs, clear all irq flags */ @@ -410,6 +410,7 @@ dt3155_open(struct file *filp) goto err_request_irq; } pd->users++; + mutex_unlock(&pd->mux); return 0; /* success */ err_request_irq: kfree(pd->q); -- 2.7.4