sched: reduce balance-tasks overhead
authorPeter Williams <pwil3058@bigpond.net.au>
Wed, 24 Oct 2007 16:23:51 +0000 (18:23 +0200)
committerIngo Molnar <mingo@elte.hu>
Wed, 24 Oct 2007 16:23:51 +0000 (18:23 +0200)
commite1d1484f72127a5580d37c379f6a5b2c2786434c
treee3e6529c5b9079f35b2c60bbd346a3c51c2b2c13
parenta0f846aa76c3e03d54c1700a87cab3a46ccd71e2
sched: reduce balance-tasks overhead

At the moment, balance_tasks() provides low level functionality for both
  move_tasks() and move_one_task() (indirectly) via the load_balance()
function (in the sched_class interface) which also provides dual
functionality.  This dual functionality complicates the interfaces and
internal mechanisms and makes the run time overhead of operations that
are called with two run queue locks held.

This patch addresses this issue and reduces the overhead of these
operations.

Signed-off-by: Peter Williams <pwil3058@bigpond.net.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/sched.h
kernel/sched.c
kernel/sched_fair.c
kernel/sched_idletask.c
kernel/sched_rt.c