diff options
Diffstat (limited to 'drivers/media/video/vivi.c')
| -rw-r--r-- | drivers/media/video/vivi.c | 6 | 
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  |