Re: [RT] read_tsc: ACK! TSC went backward! Unsynced TSCs?

From: Andi Kleen
Date: Tue Nov 29 2005 - 11:48:58 EST


On Tue, Nov 29, 2005 at 08:52:19AM -0800, thockin@xxxxxxxxxx wrote:
> On Tue, Nov 29, 2005 at 07:06:24AM -0700, Andi Kleen wrote:
> > But I'm surprised you're saying 2.6.11 broke. At least 2.6.11 64bit should
> > have always used HPET in this case. I only broke it around 2.6.13
> > where I added an overeager optimization for single socket DC on my side based
> > on a misunderstanding. Earlier and later kernels should have been ok.
>
> we didn't have HPET enabled in BIOS until recently. Turning that on made
> all the TSC gettimeofday() crap disappear. Now to find and kill any
> straggling users of rdtsc

The newer kernels work around this too by using pmtimer when needed.
Of course it's slow.

Regarding straggling users of rdtsc - one way would be to optionally
trap them and log them in the kernel. That would work in ring 3 at least.

-Andi

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