From: akpm@linux-foundation.org Date: Thu, 8 Feb 2007 17:36:57 +0000 (-0300) Subject: V4L/DVB (5209): Kthread api conversion for dvb_frontend and av7110 fix X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=6591691b259f9487f374f35c0c310aa220f829c6;p=deliverable%2Flinux.git V4L/DVB (5209): Kthread api conversion for dvb_frontend and av7110 fix avoid double-up(), pointed out by Oliver. Signed-off-by: Andrew Morton Acked-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c index 470ae167beb9..a21a894d3f98 100644 --- a/drivers/media/dvb/dvb-core/dvb_frontend.c +++ b/drivers/media/dvb/dvb-core/dvb_frontend.c @@ -525,7 +525,7 @@ static int dvb_frontend_thread(void *data) while (1) { up(&fepriv->sem); /* is locked when we enter the thread... */ - +restart: timeout = wait_event_interruptible_timeout(fepriv->wait_queue, dvb_frontend_should_wakeup(fe) || kthread_should_stop(), fepriv->delay); @@ -536,7 +536,7 @@ static int dvb_frontend_thread(void *data) } if (try_to_freeze()) - continue; + goto restart; if (down_interruptible(&fepriv->sem)) break;