提交 ca21d2dc 编写于 作者: M Mauro Carvalho Chehab

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

Signed-off-by: NMauro Carvalho Chehab <mchehab@infradead.org>
上级 47625da2
......@@ -452,6 +452,7 @@ static void em28xx_uninit_isoc(struct em28xx *dev)
dev->isoc_ctl.num_bufs=0;
del_timer(&dev->vidq.timeout);
em28xx_capture_start(dev, 0);
}
......@@ -575,9 +576,8 @@ static void em28xx_vid_timeout(unsigned long data)
unsigned long flags;
spin_lock_irqsave(&dev->slock,flags);
while (!list_empty(&vidq->active)) {
buf = list_entry(vidq->active.next, struct em28xx_buffer,
vb.queue);
list_for_each_entry(buf, vidq->active.next, vb.queue) {
list_del(&buf->vb.queue);
buf->vb.state = VIDEOBUF_ERROR;
wake_up(&buf->vb.done);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册