[LinuxPPS] PPS/ntpd fails on fresh startup

Rodolfo Giometti giometti at enneenne.com
Wed Oct 15 11:20:31 CEST 2008


On Wed, Oct 15, 2008 at 08:12:55PM +1100, Cirilo Bernardo wrote:
> 
> I do recall that some refclock drivers may alter the LDISC, but that
> was over a year ago since I looked at this and I can't remember the
> gory details.  I have grepped the source (for LDISC) and found
> references to LDISC (also a parameter ldisc) in files including (but
> not only):
> 
> ntpd/refclock_nmea.c
> ntpd/refclock_oncore.c
> ntpd/refclock_trimbledc.c
> 
> So check your particular refclock driver and see if it is interfering.
>  If it is, think carefully about how to make changes - remember that
> the NTPD people will not make any Linux-only changes which may affect
> other systems; in fact it would be extremely difficult to get them to
> accept any Linux-only changes at all (even though it is obvious that
> the refclocks have other weird things).
> 
> Of course a workaround for that (extremely ugly hack) is to have
> linuxpps periodically check the current ldisc and force it back.  A
> more polite change may be to alter NTPD so that the LDISC is an
> optional parameter in the config file - such a change may actually
> free the code from its horrible LDISC bonds. (Such a change may also
> be rejected if it changes the default behavior of the refclock
> driver.)  This change may also make it possible for us to eradicate
> some (or all) functions of ppsldisc.

PPS API doesn't talk about LDISC at all, so a driver who does that
changes does something «non compliant» but system specific.

If the rule «the NTPD people will not make any Linux-only changes
which may affect other systems» is true, it can be used too as: «the
NTPD people will not make any OS-only changes which may affect other
systems», where «OS» can be any OS on the scene. :)

I suppose we can propose a configuration parameter for the LDISC
selection since this may be useful for LinuxPPS ldisc support too!

Ciao,

Rodolfo

-- 

GNU/Linux Solutions                  e-mail: giometti at enneenne.com
Linux Device Driver                          giometti at linux.it
Embedded Systems                     phone:  +39 349 2432127
UNIX programming                     skype:  rodolfo.giometti



More information about the LinuxPPS mailing list