All of lore.kernel.org
 help / color / mirror / Atom feed
* [Kernel-janitors] [PATCH] video/bw-qcam: replace schedule_timeout()
@ 2004-07-26 22:49 Nishanth Aravamudan
  0 siblings, 0 replies; only message in thread
From: Nishanth Aravamudan @ 2004-07-26 22:49 UTC (permalink / raw)
  To: kernel-janitors

[-- Attachment #1: Type: text/plain, Size: 1923 bytes --]

I would appreciate any comments from the janitors list. This is one (of
many) cases where I made a decision about replacing

set_current_state(TASK_INTERRUPTIBLE);
schedule_timeout(some_time);

with

msleep(jiffies_to_msecs(some_time));

msleep() is not exactly the same as the previous code, but I only did
this replacement where I thought long delays were *desired*. If this is
not the case here, then just disregard this patch. 

Thanks,
Nish



Applys-to: 2.6.7

Description: Replace schedule_timeout() with msleep() to guarantee the
task delays for the desired time.

Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>


--- linux-vanilla/drivers/media/video/bw-qcam.c	2004-06-16 05:19:02.000000000 +0000
+++ linux-dev/drivers/media/video/bw-qcam.c	2004-07-12 18:50:05.000000000 +0000
@@ -248,10 +248,7 @@ static int qc_waithand(struct qcam_devic
 			   response. */
 			   
 			if(runs++>maxpoll)
-			{
-				current->state=TASK_INTERRUPTIBLE;
-				schedule_timeout(HZ/200);
-			}
+				msleep(5);
 			if(runs>(maxpoll+1000)) /* 5 seconds */
 				return -1;
 		}
@@ -268,10 +265,7 @@ static int qc_waithand(struct qcam_devic
 			   response. */
 			   
 			if(runs++>maxpoll)
-			{
-				current->state=TASK_INTERRUPTIBLE;
-				schedule_timeout(HZ/200);
-			}
+				msleep(5);
 			if(runs++>(maxpoll+1000)) /* 5 seconds */
 				return -1;
 		}
@@ -301,10 +295,7 @@ static unsigned int qc_waithand2(struct 
 		   response. */
 		   
 		if(runs++>maxpoll)
-		{
-			current->state=TASK_INTERRUPTIBLE;
-			schedule_timeout(HZ/200);
-		}
+			msleep(5);
 		if(runs++>(maxpoll+1000)) /* 5 seconds */
 			return 0;
 	}
@@ -669,8 +660,7 @@ long qc_capture(struct qcam_device * q, 
 		   time will be 240 / 200 = 1.2 seconds. The compile-time
 		   default is to yield every 4 lines. */
 		if (i >= yield) {
-			current->state=TASK_INTERRUPTIBLE;
-			schedule_timeout(HZ/200);
+			msleep(5);
 			yield = i + yieldlines;
 		}
 	}

[-- Attachment #2: Type: text/plain, Size: 167 bytes --]

_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-07-26 22:49 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-07-26 22:49 [Kernel-janitors] [PATCH] video/bw-qcam: replace schedule_timeout() Nishanth Aravamudan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.