RT scheduler config, suggestions and questions

From: Max Krasnyanskiy
Date: Tue Feb 05 2008 - 18:38:27 EST


Folks,

I just realized that in latest Linus' tree following sysctls are under SCHED_DEBUG:
sched_rt_period
sched_rt_ratio

I do not believe that is correct. I know that we do not want to expose scheduler knobs
in general but theses are not the heuristic kind of knobs. There is no way the scheduler can magically figure out what the correct setting should be here.

Also shouldn't those new RT features that recently went be configurable and _disabled_ by default ? For example "RT watchdog" and "RT throttling" actually seem very questionable. SCHED_FIFO is clearly defined as
"
A SCHED_FIFO process runs until either it is blocked by an I/O request, it is preempted by a higher priority process, or it calls sched_yield(2).
"

Both the watchdog and the throttling are clearly braking that rule. I think it's good to have those features but not enabled by default and certainly not with sysctls that disable them hidden under debugging.
How about this:
- We introduce Kconfig options for them ?
- Expose all rt sysctls outside of #ifdef DEBUG

I can kook up some patches if that sounds ok.

----

btw I can see "watchdog" being very useful to catch hard-RT tasks that exceed the deadline.
But's it gotta be per thread. Single setting per user is not enough. Unless a use has a single RT task.

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