 - Now that we have kseq groups, balance them seperately.  - The new sched_balance_groups() function does intra-group balancing while    sched_balance() balances the available groups.  - Pick a random time between 0 ticks and hz * 2 ticks to restart each    balancing process.  Each balancer has its own timeout.  - Pick a random place in the list of groups to start the search for lowest    and highest group loads.  This prevents us from prefering a group based on    numeric position.  - Use a nasty hack to stop us from preferring cpu 0.  The problem is that    softclock always runs on cpu 0, so it always has a little extra load.  We    ignore this load in the balancer for now.  In the future softclock should    run on a random cpu and these hacks can go away.
 - Now that we have kseq groups, balance them seperately.
 - The new sched_balance_groups() function does intra-group balancing while
   sched_balance() balances the available groups.
 - Pick a random time between 0 ticks and hz * 2 ticks to restart each
   balancing process.  Each balancer has its own timeout.
 - Pick a random place in the list of groups to start the search for lowest
   and highest group loads.  This prevents us from prefering a group based on
   numeric position.
 - Use a nasty hack to stop us from preferring cpu 0.  The problem is that
   softclock always runs on cpu 0, so it always has a little extra load.  We
   ignore this load in the balancer for now.  In the future softclock should
   run on a random cpu and these hacks can go away.

jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase