Files
linux/kernel
Ingo Molnar 10dd31a7a1 time: ntp: fix bug in ntp_update_offset() & do_adjtimex()
Impact: change (fix) the way the NTP PLL seconds offset is initialized/tracked

Fix a bug and do a micro-optimization:

When PLL is enabled we do not reset time_reftime. If the PLL
was off for a long time (for example after bootup), this is
arguably the wrong thing to do.

We already had a hack for the common boot-time case in
ntp_update_offset(), in form of:

	if (unlikely(time_status & STA_FREQHOLD || time_reftime == 0))
 		secs = 0;

But the update delta should be reset later on too - not just when
the PLL is enabled for the first time after bootup.

So do it on !STA_PLL -> STA_PLL transitions.

This changes behavior, as previously if ntpd was disabled for
a long time and we restarted it, we'd run from that last update,
with a very large delta.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-02-25 18:38:13 +01:00
..
2009-02-08 10:00:26 -08:00
2009-02-18 15:37:54 -08:00
2008-10-16 11:21:30 -07:00
2009-02-11 18:24:08 +01:00
2008-07-28 14:37:38 +02:00
2007-07-16 09:05:50 -07:00
2009-01-06 15:59:27 -08:00
2008-12-10 08:01:54 -08:00
2008-08-13 12:55:10 +02:00
2008-10-20 15:43:10 +02:00
2009-02-18 15:37:54 -08:00
2009-01-08 08:31:02 -08:00
2009-01-08 08:31:12 -08:00
2008-09-02 19:21:40 -07:00
2009-01-06 11:07:15 +01:00
2008-11-05 10:30:14 +01:00
2009-02-12 11:57:36 +01:00
2008-02-06 10:41:02 -08:00
2008-10-16 11:21:47 -07:00