diff options
| -rw-r--r-- | drivers/media/video/vivi.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/media/video/vivi.c b/drivers/media/video/vivi.c index cc1cf6b17183..6e7bf5719b34 100644 --- a/drivers/media/video/vivi.c +++ b/drivers/media/video/vivi.c | |||
| @@ -529,11 +529,13 @@ static void vivi_thread_tick(struct vivi_dev *dev) | |||
| 529 | spin_lock_irqsave(&dev->slock, flags); | 529 | spin_lock_irqsave(&dev->slock, flags); |
| 530 | if (list_empty(&dma_q->active)) { | 530 | if (list_empty(&dma_q->active)) { |
| 531 | dprintk(dev, 1, "No active queue to serve\n"); | 531 | dprintk(dev, 1, "No active queue to serve\n"); |
| 532 | goto unlock; | 532 | spin_unlock_irqrestore(&dev->slock, flags); |
| 533 | return; | ||
| 533 | } | 534 | } |
| 534 | 535 | ||
| 535 | buf = list_entry(dma_q->active.next, struct vivi_buffer, list); | 536 | buf = list_entry(dma_q->active.next, struct vivi_buffer, list); |
| 536 | list_del(&buf->list); | 537 | list_del(&buf->list); |
| 538 | spin_unlock_irqrestore(&dev->slock, flags); | ||
| 537 | 539 | ||
| 538 | do_gettimeofday(&buf->vb.v4l2_buf.timestamp); | 540 | do_gettimeofday(&buf->vb.v4l2_buf.timestamp); |
| 539 | 541 | ||
| @@ -543,8 +545,6 @@ static void vivi_thread_tick(struct vivi_dev *dev) | |||
| 543 | 545 | ||
| 544 | vb2_buffer_done(&buf->vb, VB2_BUF_STATE_DONE); | 546 | vb2_buffer_done(&buf->vb, VB2_BUF_STATE_DONE); |
| 545 | dprintk(dev, 2, "[%p/%d] done\n", buf, buf->vb.v4l2_buf.index); | 547 | dprintk(dev, 2, "[%p/%d] done\n", buf, buf->vb.v4l2_buf.index); |
| 546 | unlock: | ||
| 547 | spin_unlock_irqrestore(&dev->slock, flags); | ||
| 548 | } | 548 | } |
| 549 | 549 | ||
| 550 | #define frames_to_ms(frames) \ | 550 | #define frames_to_ms(frames) \ |
