summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNishanth Aravamudan <nacc@us.ibm.com>2005-07-24 19:34:33 -0700
committerDavid S. Miller <davem@davemloft.net>2005-07-24 19:34:33 -0700
commitcb39d263e751f9cca8055bcacfe5ec863dfe2705 (patch)
tree6b2bead3545fced8f8b1e8de54d1b0b52e109d24
parent70c83375bb47cadd60fdb923ad913d4f4be75aba (diff)
downloadlinux-stable-cb39d263e751f9cca8055bcacfe5ec863dfe2705.tar.gz
linux-stable-cb39d263e751f9cca8055bcacfe5ec863dfe2705.tar.bz2
linux-stable-cb39d263e751f9cca8055bcacfe5ec863dfe2705.zip
[SPARC]: sbus/envctrl: replace schedule_timeout() with msleep_interruptible()
Use msleep_interruptible() instead of schedule_timeout() to guarantee the task delays as expected. Change the units of poll_interval to msecs as it is only used in this delay. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/sbus/char/envctrl.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/sbus/char/envctrl.c b/drivers/sbus/char/envctrl.c
index f6ed35b24f43..0c7cd7e7e2e5 100644
--- a/drivers/sbus/char/envctrl.c
+++ b/drivers/sbus/char/envctrl.c
@@ -1007,7 +1007,7 @@ static int kenvctrld(void *__unused)
return -ENODEV;
}
- poll_interval = 5 * HZ; /* TODO env_mon_interval */
+ poll_interval = 5000; /* TODO env_mon_interval */
daemonize("kenvctrld");
allow_signal(SIGKILL);
@@ -1016,10 +1016,7 @@ static int kenvctrld(void *__unused)
printk(KERN_INFO "envctrl: %s starting...\n", current->comm);
for (;;) {
- current->state = TASK_INTERRUPTIBLE;
- schedule_timeout(poll_interval);
-
- if(signal_pending(current))
+ if(msleep_interruptible(poll_interval))
break;
for (whichcpu = 0; whichcpu < ENVCTRL_MAX_CPU; ++whichcpu) {