On Tue, Dec 13, 2005 at 04:14:06PM +0800, Uwe Dippel wrote: > Drifting off: > > Dec 13 12:49:00 cip ntpd[26647]: ntp engine ready > Dec 13 12:49:22 cip ntpd[26647]: peer 172.16.0.4 now valid > Dec 13 12:50:16 cip ntpd[22805]: adjusting local clock by 39.362721s [...] > Dec 13 13:02:33 cip ntpd[22805]: adjusting local clock by 51.229806s
By my rough calculations, your system clock is drifting at about 1.6%, which is more than adjtime can correct for (roughly 0.5%). Here's an experiment you can do if your box is non-prod: drop to ddb and tweak the variable "tick" by hand. The default value (on i386, anyway) is 10000. You need to increase this, assuming my math is correct, by 1.6%. This would be something like: ddb> x/d tick tick: 10000 ddb> w tick 0t10160 tick 0x2710 = 0x27b0 ddb> cont Now restart "ntpd -s" and see how it copes. Unfortunately, there's no way to change "tick" from userspace other than frobbing kernel memory, and that is not permitted at the default securelevel. It would be nice if tick (and tickadj) were accessible via a sysctl or something. -- Darren Tucker (dtucker at zip.com.au) GPG key 8FF4FA69 / D9A3 86E9 7EEE AF4B B2D4 37C9 C982 80C7 8FF4 FA69 Good judgement comes with experience. Unfortunately, the experience usually comes from bad judgement.