summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/vivi.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2012-07-11 12:50:20 +0200
committerArnd Bergmann <arnd@arndb.de>2012-07-11 12:50:20 +0200
commit0dc19510430b20b3b2d6d1b9b796fd42fa2af64a (patch)
treea512cf400d74d72272ce6cf5c4d782538213d433 /drivers/media/video/vivi.c
parentb52a2c472d7fcf215e31dffdd382651e1b99f138 (diff)
parentbd0a521e88aa7a06ae7aabaed7ae196ed4ad867a (diff)
Merge tag 'v3.5-rc6' into next/soc
Linux 3.5-rc6 Dependency for imx/soc changes
Diffstat (limited to 'drivers/media/video/vivi.c')
-rw-r--r--drivers/media/video/vivi.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/media/video/vivi.c b/drivers/media/video/vivi.c
index 0960d7f0d39..08c10240e70 100644
--- a/drivers/media/video/vivi.c
+++ b/drivers/media/video/vivi.c
@@ -1149,10 +1149,14 @@ static ssize_t
vivi_read(struct file *file, char __user *data, size_t count, loff_t *ppos)
{
struct vivi_dev *dev = video_drvdata(file);
+ int err;
dprintk(dev, 1, "read called\n");
- return vb2_read(&dev->vb_vidq, data, count, ppos,
+ mutex_lock(&dev->mutex);
+ err = vb2_read(&dev->vb_vidq, data, count, ppos,
file->f_flags & O_NONBLOCK);
+ mutex_unlock(&dev->mutex);
+ return err;
}
static unsigned int