* Andrew Morton <[EMAIL PROTECTED]> wrote: > OK, but most of the new ones are unneeded with CONFIG_PREEMPT=y. I'm > still failing to see why a non-preempt, voluntary preemption kernel > even needs to try to be competitive with a preemptible kernel?
the reason is difference in overhead (codesize, speed) and risks (driver robustness). We do not want to enable preempt for Fedora yet because it breaks just too much stuff and is too heavy. So we looked for a solution that might work for a generic distro. here are the code size differences. With a typical .config (debugging options disabled), the 2.6.7-mm7(+voluntary-preempt) UP x86 kernel gets the following .text sizes: orig: 1776911 bytes preempt: 1855519 bytes (+4.4%) voluntary: 1783407 bytes (+0.3%) so if voluntary-preempt can get close to real preempt's numbers for practical stuff then we get most of the benefits while excluding some of the nastiest risks and disadvantages. (Long-term i'd like to see preempt be used unconditionally - at which point the 10-line CONFIG_VOLUNTARY_PREEMPT Kconfig and kernel.h change could go away.) Ingo