Messages in this thread | | | Date | Thu, 31 May 2018 17:52:10 +0200 | From | Peter Zijlstra <> | Subject | Re: [RFC 2/2] x86, tsc: Enable clock for ealry printk timestamp |
| |
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/20180209211143.16215-1-pasha.tatashin@oracle.com
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.
| |