On Thu, Jan 23, 2014 at 4:48 AM, Peter Zijlstra <[email protected]> wrote: > On Wed, Jan 22, 2014 at 10:17:40PM +0100, Markus Trippelsdorf wrote: >> Yes. Thanks Peter. >> > > Ah much simpler patch that should have the same effect:
This fixes the issue on my baremetal i7 machine as well. josh > --- > Subject: sched/x86/tsc: Initialize multiplier to 0 > From: Peter Zijlstra <[email protected]> > Date: Wed, 22 Jan 2014 22:08:14 +0100 > > Since we keep the clock value linearly continuous on frequency change, > make sure the initial multiplier is 0, such that out initial value is > 0. Without this we compute the initial value at whatever the TSC has > managed to reach since power-on. > > Fixes: 20d1c86a57762 ("sched/clock, x86: Rewrite cyc2ns() to avoid the need > to disable IRQs") > Cc: [email protected] > Cc: [email protected] > Cc: Eliezer Tamir <[email protected]> > Cc: [email protected] > Cc: [email protected] > Cc: Mike Galbraith <[email protected]> > Cc: Ingo Molnar <[email protected]> > Cc: [email protected] > Cc: [email protected] > Cc: Thomas Gleixner <[email protected]> > Cc: John Stultz <[email protected]> > Cc: Andy Lutomirski <[email protected]> > Cc: Arjan van de Ven <[email protected]> > Cc: Sasha Levin <[email protected]> > Cc: [email protected] > Reported-by: Markus Trippelsdorf <[email protected]> > Signed-off-by: Peter Zijlstra <[email protected]> > --- > arch/x86/kernel/tsc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > --- a/arch/x86/kernel/tsc.c > +++ b/arch/x86/kernel/tsc.c > @@ -180,7 +180,7 @@ static void cyc2ns_write_end(int cpu, st > > static void cyc2ns_data_init(struct cyc2ns_data *data) > { > - data->cyc2ns_mul = 1U << CYC2NS_SCALE_FACTOR; > + data->cyc2ns_mul = 0; > data->cyc2ns_shift = CYC2NS_SCALE_FACTOR; > data->cyc2ns_offset = 0; > data->__count = 0; > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to [email protected] > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

