--- sched.c.orig 2005-03-03 22:35:16.000000000 +0300 +++ sched.c 2005-03-03 22:34:58.000000000 +0300 @@ -2891,8 +2891,7 @@ spin_lock_irq(&rq->lock); switch_count = &prev->nvcsw; // TODO: temporary - to see it in vmstat - if ((prev->state & ~TASK_RUNNING_MUTEX) && - !(preempt_count() & PREEMPT_ACTIVE)) { + if ((prev->state & ~TASK_RUNNING_MUTEX)) { switch_count = &prev->nvcsw; if (unlikely((prev->state & TASK_INTERRUPTIBLE) && unlikely(signal_pending(prev))))