[Soekris] 4801 and FreeBSD -current
Luigi Rizzo
rizzo at icir.org
Wed Aug 6 17:15:02 UTC 2003
On Wed, Aug 06, 2003 at 06:54:02PM +0200, Poul-Henning Kamp wrote:
> In message <20030806094040.B62011 at xorpc.icir.org>, Luigi Rizzo writes:
> >On Wed, Aug 06, 2003 at 03:47:39PM +0200, Poul-Henning Kamp wrote:
> >>
> >> At least under FreeBSD -current, but probably also -stable, the TSC
> >> is no good for timekeeping.
> >
> >why is that ?
>
> It seems to be one of the "stop TSC while halted" things.
>
> In addition they have the oddest bug I've seen on a TSC for a long time:
oh sorry, is this specific to the CPU used on the 4801 then ?
cheers
luigi
> 2.17 Time Stamp Counter rollover
>
> Description:
> The upper 32 bits of the Time Stamp Counter (TSC) increment
> three core clocks before the lower 32 bits rollover. If the
> TSC is read and EAX is FFFFFFFDh, FFFFFFFEh, or FFFFFFFFh,
> then EDX will have incremented.
>
> Implications:
> The TSC cannot be read reliably.
>
> Resolution:
> 1) Use the TSC as a 32-bit counter.
> 2) When the TSC is read and EAX equals FFFFFFFDh, FFFFFFFEh,
> or FFFFFFFFh, then decrement the EDX value by 1.
>
>
> --
> Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
> phk at FreeBSD.ORG | TCP/IP since RFC 956
> FreeBSD committer | BSD since 4.3-tahoe
> Never attribute to malice what can adequately be explained by incompetence.
> _____________________________________________________________________
> Soekris Engineering, technical discussion mailing list
> [un]subscribe: http://lists.soekris.com/mailman/listinfo/soekris-tech
More information about the Soekris-tech
mailing list