Re: [RFC][PATCH 2/4] sched: Push put_prev_task() into pick_next_task()

From: Glauber Costa
Date: Fri Jun 15 2012 - 05:51:33 EST


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.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/