FYI, the 'generic dyntick' patch referenced to by Thomas Gleixner is completely different from the old dyntick patch (linked to in this article), done by Con Kolivas & co.
Our new code is a complete rewrite, ontop of the GTOD + high-res-timers code, while Con's code implemented a whole new separate infrastructure for dynticks. It turns out that generic dyntick can be implemented in a rather elegant way via the pure use of kernel/hrtimers.c APIs and via some simple callbacks from the scheduler code.
We reused bits of Con's patch: for example the 'timer top' functionality to figure out the most active timers in a running system. We also obviously learned from the experiences of the old dyntick patch - so the new code is SMP-friendly from grounds up, etc.
We also reused the name :-) We didnt feel like naming it dynticks2, beacuse it's not a parallel competition to dynticks (like suspend2 is to suspend) but it is a reimplementation and replacement.
Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds