Re: Neptune timer bug

From: Dominik Kubla (dominik.kubla@uni-mainz.de)
Date: Sun Apr 02 2000 - 05:24:04 EST


On Sat, Apr 01, 2000 at 08:09:59PM -0600, Boris Okun wrote:
> Hello, all.
>
> I am trying to find any info on Neptune timer bug. Unfortunately I
> don't have a copy of c't magazine form 10/95, which the kernel refers
> to. If anybody have any info/pointers, I'd appreciate it.
>

[ You might want to order all c´t issues since 1990 on one DVD or a bunch
of CDR´s from www.emedia.de. I found that very helpful and i cleaned my
paper archive out as soon as it arrived. -dbk]

Here we go (free translation, all errors are mine):

===========================================================================
[...]
Even so we have not discussed it further, a big bug in the timer of the
System I/O chip 82378IB (SIO) of Mercury/Neptune should be mentioned. It is
"jumpy" - which gave me some additional grey hairs due to absurd
measurements.

To read the the actual value in 8bit chunks from the 16bit timer (the
original 8253 is from the 70s after all) there is a function "Freeze Timer"
which buffers the value, so you can issue two 8bit read operations. But
apparently the 82378IB needs some dead-time for the actualisation of the
timer bits. If you access excactly at this time, the lower bits might be
updated while the upper bits are not. This results in a later sample
returning an earlier time. Only our measurement software does not expect a
sudden reversal of the time axis...

You can only avoid this by discarding those samples or better by using the
timer of the CPU instead of the SIO timer. But the former is protected and
only available in real-mode or ring 0. Fortunately the timer of the Triton
chip works correctly.
[...]
===========================================================================

Yours,
  Dominik Kubla

-- 
  Networking Group,  Hospital of Johannes Gutenberg-University                  
  Obere Zahlbacher Straße 69, 55101 Mainz, Germany                              
  Tel: +49 (0)6131 17-2482   FAX: +49 (0)6131 17-5521                           

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Apr 07 2000 - 21:00:08 EST