Re: [RFC 0/12][PATCH] SCHED_DEADLINE: core of the scheduling class

From: Dario Faggioli
Date: Wed Jan 13 2010 - 05:40:58 EST


On Tue, 2009-12-29 at 13:25 +0100, Peter Zijlstra wrote:
> On Fri, 2009-10-16 at 17:40 +0200, Raistlin wrote:
> > @@ -5966,10 +5982,14 @@ void rt_mutex_setprio(struct task_struct *p, int prio)
> > if (running)
> > p->sched_class->put_prev_task(rq, p);
> >
> > - if (rt_prio(prio))
> > - p->sched_class = &rt_sched_class;
> > - else
> > - p->sched_class = &fair_sched_class;
> > + if (deadline_task(p))
> > + p->sched_class = &deadline_sched_class;
> > + else {
> > + if (rt_prio(prio))
> > + p->sched_class = &rt_sched_class;
> > + else
> > + p->sched_class = &fair_sched_class;
> > + }
>
> This looks wrong.
>
Completely agree! :-P

> This is PI code, so the effective class should be determined based on
> the 'priority' not on the 'policy'.
>
Agree, but...

> I understand we don't yet have deadline inheritance like things in
> place, but this would be where we should make use of the simple ceiling
> protocol to boost things for now.
>
... You got it! This is me having no idea of what solution would be
better since no deadline/bandwidth/whatever inheritance is in place
right now.

Now that you gave a direction, I'll follow right that path! :-)

Thanks and regards,
Dario

--
<<This happens because I choose it to happen!>> (Raistlin Majere)
----------------------------------------------------------------------
Dario Faggioli, ReTiS Lab, Scuola Superiore Sant'Anna, Pisa (Italy)

http://blog.linux.it/raistlin / raistlin@xxxxxxxxx /
dario.faggioli@xxxxxxxxxx

Attachment: signature.asc
Description: This is a digitally signed message part