linux/kernel/sched
Paul Turner aff3e49884 sched: Account for blocked load waking back up
When a running entity blocks we migrate its tracked load to
cfs_rq->blocked_runnable_avg.  In the sleep case this occurs while holding
rq->lock and so is a natural transition.  Wake-ups however, are potentially
asynchronous in the presence of migration and so special care must be taken.

We use an atomic counter to track such migrated load, taking care to match this
with the previously introduced decay counters so that we don't migrate too much
load.

Signed-off-by: Paul Turner <pjt@google.com>
Reviewed-by: Ben Segall <bsegall@google.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/20120823141506.726077467@google.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2012-10-24 10:27:23 +02:00
..
Makefile sched: Move cputime code to its own file 2012-08-20 13:05:17 +02:00
auto_group.c sched: Clean up parameter passing of proc_sched_autogroup_set_nice() 2012-03-02 12:23:49 +01:00
auto_group.h
clock.c
core.c sched: Add an rq migration call-back to sched_class 2012-10-24 10:27:23 +02:00
cpupri.c sched: Fix minor code style issues 2012-07-26 11:47:00 +02:00
cpupri.h
cputime.c vtime: Consolidate system/idle context detection 2012-09-25 15:42:37 +02:00
debug.c sched: Maintain the load contribution of blocked entities 2012-10-24 10:27:22 +02:00
fair.c sched: Account for blocked load waking back up 2012-10-24 10:27:23 +02:00
features.h sched: cpu_power: enable ARCH_POWER 2012-09-13 16:52:06 +02:00
idle_task.c sched/nohz: Rewrite and fix load-avg computation -- again 2012-07-05 20:58:13 +02:00
rt.c sched: Remove __ARCH_WANT_INTERRUPTS_ON_CTXSW 2012-09-13 16:52:04 +02:00
sched.h sched: Account for blocked load waking back up 2012-10-24 10:27:23 +02:00
stats.c sched: Remove sched_switch 2012-01-27 13:28:53 +01:00
stats.h Merge branch 'sched/core' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into cputime-tip 2011-12-19 19:23:15 +01:00
stop_task.c sched: Fix migration thread runtime bogosity 2012-08-13 18:41:55 +02:00