On Mon, 26 Jun 2006 09:08:19 -0500 [EMAIL PROTECTED] wrote: > The kthread used to speed up polling for IPMI was using udelay > 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 <[EMAIL PROTECTED]> > > Index: linux-2.6.17/drivers/char/ipmi/ipmi_si_intf.c > =================================================================== > --- linux-2.6.17.orig/drivers/char/ipmi/ipmi_si_intf.c > +++ linux-2.6.17/drivers/char/ipmi/ipmi_si_intf.c > @@ -809,7 +809,7 @@ static int ipmi_thread(void *data) > /* do nothing */ > } > else if (smi_result == SI_SM_CALL_WITH_DELAY) > - udelay(1); > + schedule(); > else > schedule_timeout_interruptible(1); > }
calling schedule() isn't a lot of use either. If CONFIG_PREEMPT it's of no benefit and will just chew CPU. If !CONFIG_PREEMPT && !need_resched() then it's a no-op and will chew CPU. If !CONFIG_PREEMPT && need_resched() then yes, it'll schedule away. This is pretty much the only time that a simple schedule() is useful. What are we actually trying to do in here? Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Openipmi-developer mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openipmi-developer
