Messages in this thread Patch in this message | | | From | Diwakar Tundlam <> | Date | Wed, 7 Mar 2012 14:44:26 -0800 | Subject | [PATCH] scheduler: domain: correctly initialize 'next_balance' in 'nohz' idle balancer |
| |
scheduler: domain: init next_balance in nohz_idle_balancer with jiffies
The 'next_balance' field of 'nohz' idle balancer must be initialized to jiffies. Since jiffies is initialized to negative 300 seconds the 'nohz' idle balancer does not run for the first 300s (5mins) after bootup. If no new processes are spawed or no idle cycles happen, the load on the cpus will remain unbalanced for that duration.
Signed-off-by: Diwakar Tundlam <dtundlam@nvidia.com> --- 1 files changed, 1 insertions(+), 0 deletions(-)
diff -up sched/fair.c{.orig,} --- sched/fair.c.orig 2012-03-07 08:33:03.000000000 -0800 +++ sched/fair.c 2012-03-07 13:50:30.787265795 -0800 @@ -5614,6 +5614,7 @@ __init void init_sched_fair_class(void) open_softirq(SCHED_SOFTIRQ, run_rebalance_domains); #ifdef CONFIG_NO_HZ + nohz.next_balance = jiffies; zalloc_cpumask_var(&nohz.idle_cpus_mask, GFP_NOWAIT); cpu_notifier(sched_ilb_notifier, 0); #endif
| |