Re: [PATCH 13/15] sched: Use a static_key for sched_clock_stable

From: Markus Trippelsdorf
Date: Wed Jan 22 2014 - 14:09:14 EST


On 2014.01.22 at 19:42 +0100, Peter Zijlstra wrote:
> On Wed, Jan 22, 2014 at 07:35:38PM +0100, Markus Trippelsdorf wrote:
>
> > >FYI it happens on real hardware on my machine:
>
> > >[ 60.375384] process: using AMD E400 aware idle routine
>
> > But this is a different issue. I've bisected it to:
> >
> > commit 20d1c86a57762f0a33a78988e3fc8818316badd4
> > Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> > Date: Fri Nov 29 15:40:29 2013 +0100
> >
> > sched/clock, x86: Rewrite cyc2ns() to avoid the need to disable IRQs
> >
> > Reverting the commit "fixes" the issue:
>
> Hurm..

Turns out the fix is simple:

diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c
index a3acbac2ee72..d90f7a11d573 100644
--- a/arch/x86/kernel/tsc.c
+++ b/arch/x86/kernel/tsc.c
@@ -1198,8 +1198,8 @@ void __init tsc_init(void)
* up if their speed diverges)
*/
for_each_possible_cpu(cpu) {
- cyc2ns_init(cpu);
set_cyc2ns_scale(cpu_khz, cpu);
+ cyc2ns_init(cpu);
}

if (tsc_disabled > 0)

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