Dynamic scheduler tick
Posted Sep 4, 2009 21:07 UTC (Fri) by mingo
In reply to: Dynamic scheduler tick
Parent article: The offline scheduler
[...] In the case of cpu sets, i argue that cpu sets do not provide complete partitioning. [...]
Obviously they do not, as otherwise you would not have implemented your patch.
My point, which i outlined in more detail in my reply above, is that there are two approaches possible that are acceptable for upstreaming:
- either extend and fix cpusets with the features you desire
- or prove/show that that's impossible or undesirable. (in which case your solution will have to replace cpusets, cover all its usecases, migrate all its APIs and users smoothly, etc., etc.)
You took a third approach: "I added it as a new, separate, special-purpose feature, not integrated with existing cpusets facilities because it was the easiest for me that way".
That is the ... short-term easy but long-term expensive answer which people on lkml objected to for good reasons. We've been there, we've done that, we are still suffering the consequences ;-)
Linux is a 18+ years old kernel, there's not that many easy projects left in it anymore :-/ Core kernel features that look basic and which are not in Linux yet often turn out to be not that simple.
I hope this explains our point of view. We can continue this discussion on lkml - i'm very interested in extensions to cpusets and Peter Zijstra outlined models for integrating IRQ space partitioning into the cpusets model. (he called them system-sets) He sent a few prototype patches to lkml as well - early 2008 IIRC. Those could be picked up and finished, if you are interested.
to post comments)