Messages in this thread Patch in this message | | | From | Charles Wang <> | Subject | [PATCH] sched: add missing call for calc_load_exit_idle | Date | Mon, 20 Aug 2012 16:02:33 +0800 |
| |
From Charles Wang <muming.wq@taobao.com>
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@taobao.com>
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 -- 1.7.9.5
| |