Commit 90851fe9 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (5843): ivtv: fix missing signal_pending check.

parent f8859691
Loading
Loading
Loading
Loading
+1 −4
Original line number Original line Diff line number Diff line
@@ -807,7 +807,6 @@ int ivtv_stop_v4l2_encode_stream(struct ivtv_stream *s, int gop_end)
		then = jiffies;
		then = jiffies;
		/* Make sure DMA is complete */
		/* Make sure DMA is complete */
		add_wait_queue(&s->waitq, &wait);
		add_wait_queue(&s->waitq, &wait);
		set_current_state(TASK_INTERRUPTIBLE);
		do {
		do {
			/* check if DMA is pending */
			/* check if DMA is pending */
			if ((s->type == IVTV_ENC_STREAM_TYPE_MPG) &&	/* MPG Only */
			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)
			} else if (read_reg(IVTV_REG_DMASTATUS) & 0x02) {
			} else if (read_reg(IVTV_REG_DMASTATUS) & 0x02) {
				break;
				break;
			}
			}

		} while (!ivtv_sleep_timeout(HZ / 100, 1) && then + HZ * 2 > jiffies);
			ivtv_sleep_timeout(HZ / 100, 1);
		} while (then + HZ * 2 > jiffies);


		set_current_state(TASK_RUNNING);
		set_current_state(TASK_RUNNING);
		remove_wait_queue(&s->waitq, &wait);
		remove_wait_queue(&s->waitq, &wait);