Messages in this thread | | | Date | Fri, 15 Jun 2012 13:49:03 +0400 | From | Glauber Costa <> | Subject | Re: [RFC][PATCH 2/4] sched: Push put_prev_task() into pick_next_task() |
| |
On 06/14/2012 05:29 PM, Peter Zijlstra wrote: > +static struct task_struct * > +pick_next_task_rt(struct rq *rq, struct task_struct *prev) > { > - struct task_struct *p = _pick_next_task_rt(rq); > + struct task_struct *p; > + struct rt_rq *rt_rq =&rq->rt; > + > + if (!rt_rq->rt_nr_running) > + return NULL; > + > + if (rt_rq_throttled(rt_rq)) > + return NULL; > + > + if (prev) > + prev->sched_class->put_prev_task(rq, prev); > + it might be me, but this one sounds strange. If the responsibility of putting the task now lays with pic_next_task, you can't return NULL without doing this first.
| |