kernel - Rearrange usched_bsd4.c a bit
authorMatthew Dillon <dillon@apollo.backplane.com>
Sat, 11 Dec 2010 08:42:18 +0000 (00:42 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Sat, 11 Dec 2010 08:42:18 +0000 (00:42 -0800)
commiteb501f47aa2ef0a950fc2d481ce33ddeafb725c2
treecbe66f6f734e0d1ae8ecec2ca4d0ee342aab21a8
parent572a7ed95c499105bcdfceb44aee6f2c118a5bf7
kernel - Rearrange usched_bsd4.c a bit

* Rearrange the way the scheduler helpers are woken up.  This results in
  much better coverage on systems with large numbers of cpus.

  Tested on the 48-core opteron monster.

* Essentially we no longer do bogus wakeups of scheduler helpers, and the
  chaining has been fixed when a scheduler helper is unable to perform
  the operation it was scheduled for (it tries to find another idle cpu
  to forward to).

  Most cpumask operations are now performed while holding the spin lock.
sys/kern/usched_bsd4.c