Messages in this thread | | | Subject | Re: [PATCH 1/3] sched: fix cgroup movement of newly created process | From | Peter Zijlstra <> | Date | Tue, 13 Dec 2011 13:41:09 +0100 |
| |
On Tue, 2011-12-13 at 15:57 +0900, Daisuke Nishimura wrote:
> kernel/sched_fair.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-)
you blink you loose, that file doesn't exist anymore.
> diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c > index 5c9e679..df145a9 100644 > --- a/kernel/sched_fair.c > +++ b/kernel/sched_fair.c > @@ -4922,10 +4922,10 @@ static void task_move_group_fair(struct task_struct *p, int on_rq) > * to another cgroup's rq. This does somewhat interfere with the > * fair sleeper stuff for the first placement, but who cares. > */ > - if (!on_rq) > + if (!on_rq && p->state != TASK_RUNNING) > p->se.vruntime -= cfs_rq_of(&p->se)->min_vruntime; > set_task_rq(p, task_cpu(p)); > - if (!on_rq) > + if (!on_rq && p->state != TASK_RUNNING) > p->se.vruntime += cfs_rq_of(&p->se)->min_vruntime; > } > #endif
The much saner way of writing that is something like:
/* * Comment explaining stuff.. */ if (!on_rq && p->state == TASK_RUNNING) on_rq = 1;
...
| |