preemptive kernel
PATCH 1/1 preemptive kernel
The patch makes the Linux kernel preemptible: higher priority processes can preempt other lower priority processes, even if they are running in kernel-mode.
An updated preemptive kernel for 2.5.3-pre4 is available here:
ftp://ftp.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.5/
And for 2.4.8-pre6 (and 2.4.18-pre6 + Ingo's O(1) Scheduler, J5):
ftp://ftp.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/
Most notably, the SMP instabilities under the new scheduler have been solved. This version is rock-solid on my testing in both 2.4 and 2.5 under UP and SMP.
Ingo Molnar offered some optimizations, some of which are in this release and others which I will work on for future releases.
Enjoy,
Robert love
Changes since 20020113 release:
- rename preempt_is_disabled to preempt_get_count (me)
- remove preempt_prefetch, it does more harm than good (Ingo Molnar)
- optimize preempt_enable (George Anzinger, Ingo Molnar)
- better locking in sched.c (me)
- fix race on fork (Ingo Molnar)
- fix mismatched locking in new O(1) migration code (me)
- use BUG_ON instead of BUG where applicable (me)
o for 2.4, add BUG_ON macro
- update Documentation/preempt_locking.txt (me)
- misc clean up (me)