Re: [RFC PATCH] sched: rt: fix selecting runqueue for task to bepushed

From: Steven Rostedt
Date: Wed Dec 12 2012 - 09:03:46 EST


On Wed, 2012-12-12 at 19:44 +0800, Hillf Danton wrote:
> On Wed, Dec 12, 2012 at 10:46 AM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> > On Tue, 2012-12-11 at 20:54 -0500, Steven Rostedt wrote:
> >
> >> I'm actually thinking that that test should always fail. The
> >> cpupri_find() does a scan of all priorities up to but not including the
> >> current task's priority. If cpupri_find() finds a mask, it means that it
> >> found CPUs that are running only tasks of lower priority than the task
> >> we are checking. Which means, it should never include the task's CPU, as
> >> that CPU should have a higher priority than what is being returned by
> >> lowest_mask. If it can't find a set of CPUs of lower priority, it should
> >> return false, and the find_lowest_rq() should exit.
> >>
> >> I'll add a WARN_ON_ONCE() there, and see if I can trigger it. :-/
> >
> > Ah, for select_task_rq_rt() it can get that CPU, because it's called in
> > the wakeup path before the task is added into the CPUs priority. And we
> > definitely want the current CPU in that case.
> >
> Hm ... the latency of the woken task increases iff we overload its
> runqueue, no?
>

No, it doesn't.

-- Steve

--
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/