Make sure the scheduling class of idle_thread is PRI_IDLE. Tested by: semprix[at]rootdrive.org --- src/sys/kern/kern_idle.c.orig Wed Jan 26 22:28:21 2005 +++ src/sys/kern/kern_idle.c Wed Jan 26 22:26:08 2005 @@ -83,7 +83,9 @@ td = FIRST_THREAD_IN_PROC(p); TD_SET_CAN_RUN(td); td->td_flags |= TDF_IDLETD; - td->td_priority = PRI_MAX_IDLE; + sched_class(td->td_ksegrp, PRI_IDLE); + td->td_ksegrp->kg_user_pri = PRI_MAX_IDLE; + sched_prio(td, PRI_MAX_IDLE); mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); #ifdef SMP