[$] Revisiting the kernel's preemption model, part 2
In last week's episode, a need to preemptkernel code that is executing long-running instructions led to a deeperreexamination of how the kernel handles preemption. There are a number ofsupported preemption modes, varying from "none" (kernel code is neverpreemptible) to realtime (where the kernel is almost always preemptible).Making better use of the kernel's preemption machinery looked like apossible solution to the immediate problem, but it seems that there arebetter options in store. In short, kernel developers would like to givethe scheduler complete control over CPU-scheduling decisions.