On 01/04/2011 11:41 AM, Hillf Danton wrote:
quoted text > /* !curr->sched_class->yield_to_task || */
>
>> + curr->sched_class != p->sched_class) {
>> + goto out;
>> + }
>> +
> /*
> * ask scheduler to compute the next for successfully kicking
> @p onto its CPU
> * what if p_rq is rt_class to do?
> */
> next = pick_next_task(p_rq);
> if (next != p)
> p->se.vruntime = next->se.vruntime -1;
> deactivate_task(p_rq, p, 0);
> activate_task(p_rq, p, 0);
> if (rq == p_rq)
> schedule();
> else
> resched_task(p_rq->curr);
> yield = 0;
Wouldn't that break for FIFO and RR tasks?
There's a reason all the scheduler folks wanted a
per-class yield_to_task function :)
--
All rights reversed
--
unsubscribe notice To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Messages in current thread:
Re: [RFC -v3 PATCH 2/3] sched: add yield_to function , Rik van Riel , (Tue Jan 4, 9:44 am)