Messages in this thread | | | Subject | Re: scheduler oddity [bug?] | From | Mike Galbraith <> | Date | Sun, 08 Mar 2009 14:35:30 +0100 |
| |
On Sun, 2009-03-08 at 11:19 +0100, Peter Zijlstra wrote:
> Wouldn't something like the below be more suited: > > diff --git a/kernel/sched.c b/kernel/sched.c > index 89e2ca0..94c8b02 100644 > --- a/kernel/sched.c > +++ b/kernel/sched.c > @@ -2501,7 +2501,7 @@ static void __sched_fork(struct task_struct *p) > p->se.prev_sum_exec_runtime = 0; > p->se.nr_migrations = 0; > p->se.last_wakeup = 0; > - p->se.avg_overlap = 0; > + p->se.avg_overlap = sysctl_sched_migration_cost; > p->se.start_runtime = 0; > p->se.avg_wakeup = sysctl_sched_wakeup_granularity; >
Dunno exactly what we need to do here. My hacklet certainly ain't it, but I suspect this isn't going to work out either. Having tasks begin life at zero or sysctl_sched_migration_cost won't matter much methinks.
-Mike
| |