On Tue, Oct 02, 2007 at 09:59:04PM +0200, Dmitry Adamushko wrote: > The following patch (sched: disable sleeper_fairness on SCHED_BATCH) > seems to break GROUP_SCHED. Although, it may be > 'oops'-less due to the possibility of 'p' being always a valid > address.
Thanks for catching it! Patch below looks good to me. Acked-by : Srivatsa Vaddagiri <[EMAIL PROTECTED]> > Signed-off-by: Dmitry Adamushko <[EMAIL PROTECTED]> > > --- > diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c > index 8727d17..a379456 100644 > --- a/kernel/sched_fair.c > +++ b/kernel/sched_fair.c > @@ -473,9 +473,8 @@ place_entity(struct cfs_rq *cfs_rq, struct sched_entity > *se, int initial) > vruntime += sched_vslice_add(cfs_rq, se); > > if (!initial) { > - struct task_struct *p = container_of(se, struct task_struct, > se); > - > - if (sched_feat(NEW_FAIR_SLEEPERS) && p->policy != SCHED_BATCH) > + if (sched_feat(NEW_FAIR_SLEEPERS) && entity_is_task(se) && > + task_of(se)->policy != SCHED_BATCH) > vruntime -= sysctl_sched_latency; > > vruntime = max_t(s64, vruntime, se->vruntime); > > --- > -- Regards, vatsa - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/