Paul Turner 953bfcd10e sched: Implement hierarchical task accounting for SCHED_OTHER
Introduce hierarchical task accounting for the group scheduling case in CFS, as
well as promoting the responsibility for maintaining rq->nr_running to the
scheduling classes.

The primary motivation for this is that with scheduling classes supporting
bandwidth throttling it is possible for entities participating in throttled
sub-trees to not have root visible changes in rq->nr_running across activate
and de-activate operations.  This in turn leads to incorrect idle and
weight-per-task load balance decisions.

This also allows us to make a small fixlet to the fastpath in pick_next_task()
under group scheduling.

Note: this issue also exists with the existing sched_rt throttling mechanism.
This patch does not address that.

Signed-off-by: Paul Turner <pjt@google.com>
Reviewed-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/20110721184756.878333391@google.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2011-08-14 12:01:13 +02:00
..
2011-07-26 16:49:45 -07:00
2011-07-28 15:25:46 +00:00
2011-03-14 09:15:23 -04:00
2011-07-26 16:49:47 -07:00
2010-10-30 01:42:19 -04:00
2011-07-26 16:49:47 -07:00
2011-05-19 18:51:57 +10:00
2011-03-31 11:26:23 -03:00
2011-07-26 16:49:47 -07:00
2011-07-14 12:59:14 +03:00
2011-07-26 16:49:44 -07:00
2011-05-17 23:19:17 +02:00
2011-08-04 09:09:27 +02:00
2010-10-01 10:50:58 -07:00
2011-08-03 22:03:29 -10:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-07-26 16:49:45 -07:00
2011-05-24 12:10:51 +02:00
2011-07-26 16:49:47 -07:00
2011-05-20 12:50:29 -07:00
2011-07-26 16:49:47 -07:00
2011-07-26 16:49:47 -07:00
2011-07-30 21:21:39 +02:00
2011-07-26 16:49:47 -07:00
2011-03-31 11:26:23 -03:00
2011-04-24 13:18:38 +02:00
2011-08-14 12:00:41 +02:00
2011-07-26 16:49:47 -07:00
2011-03-23 19:46:51 -07:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00