[ntp:questions] Re: Solairs 8 xntpd client oscillates (now with Q for ntp 4)

Brian Utterback brian.utterback at sun.removeme.com
Wed May 10 18:47:29 UTC 2006

Joachim Schrod wrote:
> Brian Utterback wrote:
>> Richard B. Gilbert wrote:
>>> Alternatively, you could ask Sun for support (and pay for it).
>> Well, lets not go that far 8-). As we have stated in this forum
>> in the past, all support here is best effort, and some of us are
>> welling to expend that effort in directions that others are not.
> Thanks a lot, Brian; I really appreciate your engagement. I have to 
> admit that I don't have a support contract for that small workstation, 
> though we have it for the larger servers. (But there xntpd is working...)
> I added "disable pll" and "slewalways yes" to my ntp.conf and started it 
> anew. After a one lost synchronizations, it stabilized and doesn't loose 
> it any more for 6 hours, by now. But the offsets do not decrease:
> 10 May 11:44:21 xntpd[1787]: offset 0.235037 sec freq 389.284 ppm poll 6
> 10 May 12:44:21 xntpd[1787]: offset 0.234979 sec freq 389.284 ppm poll 6
> 10 May 13:44:21 xntpd[1787]: offset 0.234953 sec freq 389.284 ppm poll 6
> 10 May 14:44:21 xntpd[1787]: offset 0.235356 sec freq 389.284 ppm poll 6
> 10 May 15:44:21 xntpd[1787]: offset 0.235206 sec freq 389.284 ppm poll 6
> 10 May 16:44:21 xntpd[1787]: offset 0.235293 sec freq 389.284 ppm poll 6
> 10 May 17:44:21 xntpd[1787]: offset 0.235244 sec freq 389.284 ppm poll 6
> 10 May 18:44:21 xntpd[1787]: offset 0.235323 sec freq 389.284 ppm poll 6

Wow, pretty good stability there. Too bad it is stable 234 milliseconds
in the future.

Did you figure out what revision of the patch you have? If you are
back-revved, could you try it out with the up to date rev?

> This is my ntp.conf (w/o comments, to keep the post smaller):
> ---------------------------
> server            # IP address of server
> driftfile /etc/inet/ntp.drift # path for drift file
> slewalways yes
> disable pll
> logfile   /var/log/ntp          # alternate log file
> logconfig =all
> statsdir /var/ntp/ntpstats/             # directory for statistics files
> statistics loopstats peerstats clockstats
> filegen peerstats  file peerstats  type day enable
> filegen loopstats  file loopstats  type day enable
> filegen clockstats file clockstats type day enable
> ---------------------------

It all looks good. Of course, if you have one of the first three
revs of the xntpd patch, then the slewalways isn't needed. If you
are on a later rev, I would lose both the slewalways and the diable

> If somebody doesn't tell me that I made an error there; I seem not to 
> advance my situation with that try. So I'm about to try the next thing: 
> I fetched ntp 4.2.0 from sunfreeware. And promptly appears my next 
> question. :-)
> Let me first thank you for your explanation of disable pll and why I 
> might need it. In the documentation of 4.2.0 "disable pll" is not 
> mentioned, and also not slewalways. Is that discussion of relevance for 
> the reference NTP server? I don't think so because it all depended on 
> the compilation option SLEWALWAYS used in Sun's xntpd. Is that option 
> still in 4.x, and can I query ntpd for its compilation options?

The version 4 ntpd does not actually have a slewalways option. Instead,
it does two things to avoid the need. One, when the "-g" option is
used, ntpd will step the clock once, no matter how big the offset is.
This eliminates the need for using ntpdate before starting ntpd.
Then after that, it provides a method to configure the threshold between
doing a step and a slew. As I noted before, the problem with a slew
is it can take a very long time to complete. The default is to step for
offsets above 128ms. The idea is to allow the admin to choose the
smallest value for which a step would be preferable, even if it
bollixed up the application.  That is, maybe 1 second offsets are normal
in your setup so we would want to slew them, but a 5 minute offset would
be too big to allow the app to continue anyway.

The equivalent to "disable pll" in V4 is "disable kernel".  But of
course, it is better to use the kernel pll and not monkey with the
slew values, if possible.

By all means, please make the stats files available.

Also, I would like to understand what is wrong here. If you would
please do the following:

run this script as root:

echo `uname -a`
eeprom use-nvramrc?
eeprom nvramrc
adb -k /dev/ksyms /dev/mem <<EOF

And also try running xntpd by hand like this:

truss -vall -wall -fale -o /tmp/xntpd.truss /usr/lib/inet/xntpd -d -d -d

Let that run for 10 minute or so, and send me the xntpd.truss file,
along with the output from the script above.

> Cheers,
>     Joachim
> PS: Yesterday evening I was in a pub with a German Sun SE, Ulrich Graef; 
> whom I also told about that problem and he just remarked "Brian 
> Utterback -- oh yes, he's a very competent and very nice guy". I can 
> only agree to that... :-) :-)

Well, the next time I get a support case from Ulrich, I'll have to
remember to be especially nice. 8-)

Rose are #FF0000, Violets are #0000FF. All my base are belong to you.
Brian Utterback - OP/N1 RPE, Sun Microsystems, Inc.
Ph:877-259-7345, Em:brian.utterback-at-ess-you-enn-dot-kom

More information about the questions mailing list