On Thu, May 31, 2018 at 03:55:42PM +0200, Petr Mladek wrote: > I wonder if we could get some cleaner integration into the timer and > printk code.
Yes, these patches are particularly horrific.. There were some earlier patches by Pavel Tatashin, which attempted do get things running earlier. http://lkml.kernel.org/r/[email protected] I'm not entirely happy with that, but I never did get around to reviewing that last version :-( In particuarly, now that you made me look, I dislike his patch 6 almost as much as these patches. The idea was to get regular sched_clock() running earlier, not to botch some early_sched_clock() into it. Basically run calibrate_tsc() earlier (like _waaay_ earlier, it doesn't rely on anything other than CPUID) and if you have a recent part (with exception of SKX) you'll get a usable tsc rate (and TSC_RELIABLE) and things will work. If you have a dodgy part (sorry SKX), you'll just have to live with sched_clock starting late(r). Do not cobble things on the side, try and get the normal things running earlier.

