diff options
author | Hans Verkuil <hverkuil@xs4all.nl> | 2007-07-10 14:08:33 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-07-18 13:24:47 -0400 |
commit | 90851fe9fad68db24da8cb497bad7327b97ed3d2 (patch) | |
tree | 5bdbec1a84c598e64739ff6d710cb7b4144d60f5 | |
parent | f885969196da6ae905162c0d1c5f0553de12cb40 (diff) |
V4L/DVB (5843): ivtv: fix missing signal_pending check.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r-- | drivers/media/video/ivtv/ivtv-streams.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/media/video/ivtv/ivtv-streams.c b/drivers/media/video/ivtv/ivtv-streams.c index d538efaf61c9..287117187499 100644 --- a/drivers/media/video/ivtv/ivtv-streams.c +++ b/drivers/media/video/ivtv/ivtv-streams.c | |||
@@ -807,7 +807,6 @@ int ivtv_stop_v4l2_encode_stream(struct ivtv_stream *s, int gop_end) | |||
807 | then = jiffies; | 807 | then = jiffies; |
808 | /* Make sure DMA is complete */ | 808 | /* Make sure DMA is complete */ |
809 | add_wait_queue(&s->waitq, &wait); | 809 | add_wait_queue(&s->waitq, &wait); |
810 | set_current_state(TASK_INTERRUPTIBLE); | ||
811 | do { | 810 | do { |
812 | /* check if DMA is pending */ | 811 | /* check if DMA is pending */ |
813 | if ((s->type == IVTV_ENC_STREAM_TYPE_MPG) && /* MPG Only */ | 812 | if ((s->type == IVTV_ENC_STREAM_TYPE_MPG) && /* MPG Only */ |
@@ -822,9 +821,7 @@ int ivtv_stop_v4l2_encode_stream(struct ivtv_stream *s, int gop_end) | |||
822 | } else if (read_reg(IVTV_REG_DMASTATUS) & 0x02) { | 821 | } else if (read_reg(IVTV_REG_DMASTATUS) & 0x02) { |
823 | break; | 822 | break; |
824 | } | 823 | } |
825 | 824 | } while (!ivtv_sleep_timeout(HZ / 100, 1) && then + HZ * 2 > jiffies); | |
826 | ivtv_sleep_timeout(HZ / 100, 1); | ||
827 | } while (then + HZ * 2 > jiffies); | ||
828 | 825 | ||
829 | set_current_state(TASK_RUNNING); | 826 | set_current_state(TASK_RUNNING); |
830 | remove_wait_queue(&s->waitq, &wait); | 827 | remove_wait_queue(&s->waitq, &wait); |