linux/kernel/sched
Suresh Siddha 69e1e811dc sched, nohz: Track nr_busy_cpus in the sched_group_power
Introduce nr_busy_cpus in the struct sched_group_power [Not in sched_group
because sched groups are duplicated for the SD_OVERLAP scheduler domain]
and for each cpu that enters and exits idle, this parameter will
be updated in each scheduler group of the scheduler domain that this cpu
belongs to.

To avoid the frequent update of this state as the cpu enters
and exits idle, the update of the stat during idle exit is
delayed to the first timer tick that happens after the cpu becomes busy.
This is done using NOHZ_IDLE flag in the struct rq's nohz_flags.

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20111202010832.555984323@sbsiddha-desk.sc.intel.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2011-12-06 09:06:32 +01:00
..
auto_group.c sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
auto_group.h sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
clock.c sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
core.c sched, nohz: Track nr_busy_cpus in the sched_group_power 2011-12-06 09:06:32 +01:00
cpupri.c sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
cpupri.h sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
debug.c sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
fair.c sched, nohz: Track nr_busy_cpus in the sched_group_power 2011-12-06 09:06:32 +01:00
features.h sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
idle_task.c sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
Makefile sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
rt.c sched/rt: Code cleanup, remove a redundant function call 2011-12-06 09:06:28 +01:00
sched.h sched, nohz: Track nr_busy_cpus in the sched_group_power 2011-12-06 09:06:32 +01:00
stats.c sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
stats.h sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00
stop_task.c sched: Move all scheduler bits into kernel/sched/ 2011-11-17 12:20:22 +01:00