[LinuxPPS] LinuxPPS, kernel 4.4, ntpd 4.2.8

Joachim Fabini Joachim.Fabini at tuwien.ac.at
Wed Jan 11 18:20:08 CET 2017


On 11.01.2017 17:24, Udo van den Heuvel wrote:
> On 10-01-17 20:14, Joachim Fabini wrote:
>> Can someone familiar with LinuxPPS and/or ntp confirm this diagnosis? Or
>> disprove it? This means that ntp 4.2.8 _could_ provide PPS functionality
>> in theory but in practice it does NOT because a developer has decided
>> (for whatever reason that is not known to me) to remove a conditional.
> 
> If I understand your explanation correctly when can patch the
> conditional back in and then we should see a functional 4.2.8.

Yes, you're right.

> If you can test that you can prove that just the conditional is the
> issue here.

I compiled ntp 4.2.8 yesterday with the conditional patch and tried it
on two distinct Ubuntu 16.04 servers. Both seem to synchronize to the
NMEA/PPS clock. Current output (both external time servers are in the
campus network):

$ ntpq -p
remote        refid      st t when poll reach   delay   offset  jitter
==============================================================================
oGPS_NMEA(0)  .GPS.      0 l    5   16  377    0.000   -0.001   0.001
+ntp1.x.y.z   .GPS.      1 u   44   64  377    0.774   -0.017   0.072
+ntp2.x.y.z   1.2.3.4    2 u   64   64  377    0.787   -0.008   0.038
$ ntptime
ntp_gettime() returns code 0 (OK)
  time dc20de81.6476f2a8  Wed, Jan 11 2017 17:40:33.392, (.392440331),
  maximum error 5500 us, estimated error 0 us, TAI offset 0
ntp_adjtime() returns code 0 (OK)
  modes 0x0 (),
  offset 0.154 us, frequency -5.449 ppm, interval 1 s,
  maximum error 5500 us, estimated error 0 us,
  status 0x2007 (PLL,PPSFREQ,PPSTIME,NANO),
  time constant 4, precision 0.001 us, tolerance 500 ppm,

One thing that I've noticed for 4.2.8 is the missing log entry in
var/log/syslog. ntp 4.2.6 reports on restart whenever it finds and uses
the gps/pps source.
With ntpd 4.2.8 on Linux there are two cases: it either stops using the
GPS/PPS clock, case in which it logs the error "refclock_params:
time_pps_kcbind: Operation not supported" (original code). Or,
alternatively, with the proposed conditional patch, it keeps silent (but
uses NMEA/PPS according to ntpq/ntptime reports).

> My Fedora 24 is at 4.2.6 still. Rawhide has ntp 4.2.8.

Seems similar to Ubuntu - 12.04 and 14.04 ship 4.2.6p5 with security
patches, 16.04 has updated to 4.2.8.

thanks,
Joachim




More information about the discussions mailing list