lkml.org 
[lkml]   [2007]   [Oct]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 0/7] RT: (RFC) RT-Overload/Sched enhancements
From
Date
Hi Gregory,

On Thu, 2007-10-11 at 17:59 -0400, Gregory Haskins wrote:
> The current series applies to 23-rt1-pre1.
>
> This is a snapshot of the current work-in-progress for the rt-overload
> enhancements. The primary motivation for the series to to improve the
> algorithm for distributing RT tasks to keep the highest tasks active. The
> current system tends to blast IPIs "shotgun" style, and we aim to reduce that
> overhead where possible. We mitigate this behavior by trying to place tasks
> on the ideal runqueue before an overload even occurs.
>
> Note that this series is *not* currently stable. There is at
> least one bug resulting in a hard-lock. And the hard-lock could be masking
> other yet-to-be-discovered issues.
>
> My primary motivation for sending it out right now is to share the latest
> series with Peter Zijlstra and Steven Rostedt. However, in the interest of
> keeping the development open we are sending to a wider distribution.
> Comments/suggestions from anyone are, of course, welcome. But please note
> this is not quite ready for prime-time in any capacity.
>
> The series includes patches from both Steven and myself, with serious
> input/guidance/discussion from Peter.

I'm wondering why we need the cpu prio management stuff. I'm thinking we
might just use any cpus_allowed cpu that has a lesser priority than the
task we're trying to migrate.

And for that, steve's rq->curr_prio field seems quite suitable.

so instead of the:
for (3 tries)
find lowest cpu
try push

we do:

cpu_hotplug_lock();
cpus_and(mask, p->cpus_allowed, online_cpus);
for_each_cpu_mask(i, mask) {
if (cpu_rq(i)->curr_prio > p->prio && push_task(p, i))
break;
}
cpu_hotplug_unlock();



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

\
 
 \ /
  Last update: 2007-10-12 12:33    [W:0.060 / U:3.276 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site