diff options
author | Yong Zhang <yong.zhang0@gmail.com> | 2011-01-23 19:59:17 -0500 |
---|---|---|
committer | Leann Ogasawara <leann.ogasawara@canonical.com> | 2011-08-30 13:15:27 -0400 |
commit | aeda279631707aee64fc5dfc85b2bd2d2c99f198 (patch) | |
tree | 9dc398115599819101a4db490c90c1806ddb7b41 /kernel | |
parent | fc9da28546d5055d2474e56382b054c0a8fbe562 (diff) |
sched: tg->se->load should be initialised to tg->shares
Michael reported that when enable autogroup on UP, system
responsiveness becomes very bad.
Because in init_tg_cfs_entry() we initialise se->load
to 0 instead of tg->shares, in the end we have 0-weight
sched entity on rq, then lead to misbehavior.
Reported-by: Michael Witten <mfwitten@gmail.com>
Reported-by: Christian Kujau <christian@nerdbynature.de>
Signed-off-by: Yong Zhang <yong.zhang0@gmail.com>
Signed-off-by: Andy Whitcroft <apw@canonical.com>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/sched.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index fde6ff90352..b0004c1f100 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -7972,7 +7972,7 @@ static void init_tg_cfs_entry(struct task_group *tg, struct cfs_rq *cfs_rq, | |||
7972 | se->cfs_rq = parent->my_q; | 7972 | se->cfs_rq = parent->my_q; |
7973 | 7973 | ||
7974 | se->my_q = cfs_rq; | 7974 | se->my_q = cfs_rq; |
7975 | update_load_set(&se->load, 0); | 7975 | update_load_set(&se->load, tg->shares); |
7976 | se->parent = parent; | 7976 | se->parent = parent; |
7977 | } | 7977 | } |
7978 | #endif | 7978 | #endif |