Commit ca21d2dc authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

V4L/DVB (7544): em28xx: Fix timeout code

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent 47625da2
...@@ -452,6 +452,7 @@ static void em28xx_uninit_isoc(struct em28xx *dev) ...@@ -452,6 +452,7 @@ static void em28xx_uninit_isoc(struct em28xx *dev)
dev->isoc_ctl.num_bufs=0; dev->isoc_ctl.num_bufs=0;
del_timer(&dev->vidq.timeout);
em28xx_capture_start(dev, 0); em28xx_capture_start(dev, 0);
} }
...@@ -575,9 +576,8 @@ static void em28xx_vid_timeout(unsigned long data) ...@@ -575,9 +576,8 @@ static void em28xx_vid_timeout(unsigned long data)
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&dev->slock,flags); spin_lock_irqsave(&dev->slock,flags);
while (!list_empty(&vidq->active)) {
buf = list_entry(vidq->active.next, struct em28xx_buffer, list_for_each_entry(buf, vidq->active.next, vb.queue) {
vb.queue);
list_del(&buf->vb.queue); list_del(&buf->vb.queue);
buf->vb.state = VIDEOBUF_ERROR; buf->vb.state = VIDEOBUF_ERROR;
wake_up(&buf->vb.done); wake_up(&buf->vb.done);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment