- Don't IPI unless we're going to interrupt something exiting in the kernel.

otherwise we can afford the latency.  This makes a significant performance
   improvement.
This commit is contained in:
Jeff Roberson 2007-01-06 02:34:23 +00:00
parent 155b6ca12b
commit 9330bbbb61

View File

@ -692,7 +692,7 @@ tdq_notify(struct td_sched *ts, int cpu)
} while(!atomic_cmpset_ptr((volatile uintptr_t *)&tdq->tdq_assigned,
(uintptr_t)ts->ts_assign, (uintptr_t)ts));
/* Only ipi for realtime/ithd priorities */
if (ts->ts_thread->td_priority >= PRI_MIN_TIMESHARE)
if (ts->ts_thread->td_priority > PRI_MIN_KERN)
return;
/*
* Without sched_lock we could lose a race where we set NEEDRESCHED