Re: time warps, I despair

Ulrich Windl (
Thu, 31 Oct 1996 09:37:17 +0100

On 31 Oct 96 at 10:18, Ingo Molnar wrote:

> On Thu, 31 Oct 1996, Ulrich Windl wrote:
> > I'm working on the Linux clock code. Some long time ago I experienced
> > odd time warps I could not explain, and nobody else had a good idea,
> > except that the Linux kernel was broken.
> this bug was fixed in 2.0.9. Note that we already had the Code Freeze
> then, so the code isnt exactly pretty.
> It doesnt prevent time warps called from interrupt handlers, more planned
> for 2.1. [there are two device writers who wanted to use gettimeoffset()
> from interrupt handlers, and i guess the IPV6 code needs such stuff too
> ... maybe :)]. I'm holding on with the patches until things around
> exception handling calm down?
> i have a smallish test program that tests >user-space< time warps.
> > Now I examined all the code, especially the NTP specific parts I
> > validated twice, but found nothing. Then I began to comment-out all
> > suspicious parts that might cause it (e.g. updating the CMOS clock).
> > Still no success. I suspect some code outside of the timing code, or
> > maybe still the Pentium fast timeoffset.

The kernel used was 2.0.22, and the particular code (xntpd) does not
call gettimeoffset from an interrupt routine. It just uses adjtimex
with ADJOFFSET. Everything is in user space. (My PPS project is
distinct from that)

> You are calling it from an interrupt handler, right? Thats definitely
> unsafe ... was thinking about ways to fix it in 2.0, but all solutions
> were just too ugly.
> But for 2.1 now it seems that it should be fixed.
> -- mingo


Ulrich Windl Klinikum der Universitaet Regensburg
Rechenzentrum DV-med Franz-Josef-Strauss-Allee 11
Tel: +49 941 944-5879 D-93053 Regensburg
FAX: +49 941 944-5882
"The bad PC memory subsystems are really bad." (Linus Torvalds, 19.04.1996)
"(...) and this is under Blowlaris/StUNOS" (David S. Miller, 23.04.1996)
"Unknown DHCP option 0 length 255" (Windows/NT Server 3.51)