Re: [PATCH v2 10/12] Maintain preemptability count even for !CONFIG_PREEMPT kernels

Peter Zijlstra
2009-11-23T15:34:15Z

On Mon, 2009-11-23 at 16:06 +0200, Gleb Natapov wrote:
> Do not preempt kernel. Just maintain counter to know if task can be rescheduled.
> Asynchronous page fault may be delivered while spinlock is held or current
> process can't be preempted for other reasons. KVM uses preempt_count() to check if preemptions is allowed and schedule other process if possible. This works
> with preemptable kernels since they maintain accurate information about
> preemptability in preempt_count. This patch make non-preemptable kernel
> maintain accurate information in preempt_count too.

I'm thinking you're going to have to convince some people this won't
slow them down for no good.

Personally I always have PREEMPT=y, but other people seem to feel
strongly about not doing so.