aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2010-12-31 15:17:51 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-01-19 08:45:00 -0500
commit0d0ae15dde7d4a778056268e64bb2625f84deab6 (patch)
tree1ed3ac1b82eab0ec82da2ee3e54f11d6dadf40bc
parentce5610bca74571674c1970d33063e7c06295a9a4 (diff)
[media] gspca_main: wake wq on streamoff
We check for not streaming as a condition to abort waiting in dqbuf, so when another thread does a streamoff we should wake the wq. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/video/gspca/gspca.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/video/gspca/gspca.c b/drivers/media/video/gspca/gspca.c
index 4ab906be8962..3581dea3c1f7 100644
--- a/drivers/media/video/gspca/gspca.c
+++ b/drivers/media/video/gspca/gspca.c
@@ -1634,6 +1634,8 @@ static int vidioc_streamoff(struct file *file, void *priv,
1634 gspca_dev->usb_err = 0; 1634 gspca_dev->usb_err = 0;
1635 gspca_stream_off(gspca_dev); 1635 gspca_stream_off(gspca_dev);
1636 mutex_unlock(&gspca_dev->usb_lock); 1636 mutex_unlock(&gspca_dev->usb_lock);
1637 /* In case another thread is waiting in dqbuf */
1638 wake_up_interruptible(&gspca_dev->wq);
1637 1639
1638 /* empty the transfer queues */ 1640 /* empty the transfer queues */
1639 atomic_set(&gspca_dev->fr_q, 0); 1641 atomic_set(&gspca_dev->fr_q, 0);