diff options
author | akpm@osdl.org <akpm@osdl.org> | 2006-06-27 05:54:04 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-27 20:32:40 -0400 |
commit | 33979734cd35ae0624337cdbc529921e4350d96f (patch) | |
tree | 7ad765559cf485247591160bad7e704a000a439b /drivers/char/ipmi | |
parent | c32e066057fe0914da262c94e52cefb142f965b4 (diff) |
[PATCH] IPMI: use schedule in kthread
Corey Minyard <minyard@acm.org>
The kthread used to speed up polling for IPMI was using udelay in its
busy-wait polling loop when the lower-level state machine told it to do a
short delay. This just used CPU and didn't help scheduling, thus causing
bad problems with other tasks. Call schedule() instead.
Signed-off-by: Corey Minyard <minyard@acm.org>
Acked-by: Matt Domsch <Matt_Domsch@dell.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/char/ipmi')
-rw-r--r-- | drivers/char/ipmi/ipmi_si_intf.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index 02a7dd7a8a55..101c14b9b26d 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c | |||
@@ -809,7 +809,7 @@ static int ipmi_thread(void *data) | |||
809 | /* do nothing */ | 809 | /* do nothing */ |
810 | } | 810 | } |
811 | else if (smi_result == SI_SM_CALL_WITH_DELAY) | 811 | else if (smi_result == SI_SM_CALL_WITH_DELAY) |
812 | udelay(1); | 812 | schedule(); |
813 | else | 813 | else |
814 | schedule_timeout_interruptible(1); | 814 | schedule_timeout_interruptible(1); |
815 | } | 815 | } |