Revert "sched: Fix sleep time double accounting in enqueue entity"
authorVincent Guittot <vincent.guittot@linaro.org>
Wed, 22 Jan 2014 07:45:34 +0000 (08:45 +0100)
committerIngo Molnar <mingo@kernel.org>
Thu, 23 Jan 2014 13:48:34 +0000 (14:48 +0100)
commit9390675af0835ae1d654d33bfcf16096028550ad
treed2215be2959476834e652137151e3151160eb4d9
parent15c81026204da897a05424c79263aea861a782cc
Revert "sched: Fix sleep time double accounting in enqueue entity"

This reverts commit 282cf499f03ec1754b6c8c945c9674b02631fb0f.

With the current implementation, the load average statistics of a sched entity
change according to other activity on the CPU even if this activity is done
between the running window of the sched entity and have no influence on the
running duration of the task.

When a task wakes up on the same CPU, we currently update last_runnable_update
with the return  of __synchronize_entity_decay without updating the
runnable_avg_sum and runnable_avg_period accordingly. In fact, we have to sync
the load_contrib of the se with the rq's blocked_load_contrib before removing
it from the latter (with __synchronize_entity_decay) but we must keep
last_runnable_update unchanged for updating runnable_avg_sum/period during the
next update_entity_load_avg.

Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Reviewed-by: Ben Segall <bsegall@google.com>
Cc: pjt@google.com
Cc: alex.shi@linaro.org
Link: http://lkml.kernel.org/r/1390376734-6800-1-git-send-email-vincent.guittot@linaro.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/sched/fair.c