Re: [patch] x86_64: fix sched_clock()

From: Rusty Russell
Date: Mon May 28 2007 - 06:44:20 EST


On Fri, 2007-05-25 at 13:05 +0200, Andi Kleen wrote:
> On Fri, May 25, 2007 at 11:03:15AM +0200, Andi Kleen wrote:
> > > This? I sent it to you earlier this week:
> >
> > Sorry haven't processed those yet.
> >
> > Ah. The correct fix here is to clear the tsc flag in boot_cpu_data
> > when the option is set. Will do that.
>
> Hmm I double checked this now; tsc_disable indeed clears
> X86_FEATURE_TSC in identify_cpu and that should be always
> called before anything sched_clock related runs on a CPU.

Yes, agreed.

> Also the only possibly faulting division is protected
> by a cpu_has_tsc which even checks boot_cpu_data. this means
> even if the resync frequency code was called for
> some reason before the identify_cpu of a AP it should
> still work. For the BP this definitely cannot happen.
>
> I also tried it with qemu myself (both one and two cpus) and it worked
>
> Rusty, was this really on a standard kernel? Was it with multiple
> CPUs?

No, will re-check. Drop it for now, if I can reproduce I'll produce the
real fix or a decent explanation.

Thanks,
Rusty.


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