Re: report a bug about sched_rt

From: Peter Zijlstra
Date: Fri Jul 24 2009 - 09:13:22 EST


Don't top post -- again!

On Fri, 2009-07-24 at 21:04 +0800, sen wang wrote:
> Linux is used in many fieldes. SCHED_OTHER tasks is important to
> embedded system.

Irrelevant.

> if there is a running state taskïa realtime taskï, how can we
> shcedule the idle task up?

Because it ran out of bandwidth.

> It is ridiculousï
>
> since the throttle has a bug, why not fix it?

It doesn't have a bug, therefore I won't fix it.

The throttle limits the RT tasks to a bandwidth w of u/p.
Since real-time scheduling is about determinism a maximum bandwidth
larger than the minimum bandwidth specified by w is useless since it
cannot be relied upon.

Therefore we don't run RT tasks beyond their bandwidth limit.

Go read up on scheduling theory.

Now you might want a bandwidth of 100% for your RT application (not
something I can recommend for the overall health of your machine) in
which case you're free to change this setting:

echo -1 > /proc/sys/kernel/sched_rt_runtime_us

Should do that for you. Also read:

Documentation/scheduler/sched-rt-group.txt


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