Messages in this thread | | | Subject | Re: [PATCH] 2.4.18 scheduler bugs | Date | Fri, 15 Mar 2002 21:39:52 +0000 (GMT) | From | Alan Cox <> |
| |
> - ksoftirqd() - change daemon nice(2) value from 19 to -19. > > SoftIRQ servicing was less important than the most lowly of batch > tasks. This patch makes it more important than all but the realtime > tasks.
Bad idea - the right fix to this is to stop using ksoftirqd so readily under load. If it bales after 20 iterations life is good. As shipped life is bad.
Once ksoftirq triggers its because we are seriously overloaded (or without fixing its use slightly randomly). In that case we want other stuff to do work before we potentially unleash the next flood.
> - reschedule_idle() - smp_send_reschedule when setting idle's need_resched > Idle tasks nowdays don't spin waiting for need->resched to change, > they sleep on a halt insn instead. Therefore any setting of > need->resched on an idle task running on a remote CPU should be > accompanied by a cross-processor interrupt.
You can already tell the kernel to poll for idle tasks (and since newer intel CPUS seem to gain nothing from hlt might as well on those)
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |