From Charles Wang <muming.wq@xxxxxxxxxx>
Azat Khuzhin reported "high loadavg in linux-3.6"
After checking for upstream's code, I found Peter's patch
(Commit id:5167e8d5417bf5c322a703d2927daec727ea40dd) not be
fully applied, missing the call for calc_load_exit_idle.
After that idle exit in sampling window will always be calculated
to non-idle, and the load will be higher than normal.
This patch add the missing call for calc_load_exit_idle.
Signed-off-by: Charles Wang <muming.wq@xxxxxxxxxx>
diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index 024540f..3a9e5d5 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -573,6 +573,7 @@ static void tick_nohz_restart_sched_tick(struct tick_sched *ts, ktime_t now)
tick_do_update_jiffies64(now);
update_cpu_load_nohz();
+ calc_load_exit_idle();
touch_softlockup_watchdog();
/*
* Cancel the scheduled timer and restore the tick