On Fri, Aug 24, 2012 at 04:16:18PM +0100, Tomalak Geret'kal wrote:
Me again...
If chrony is tracking /dev/pps0 as a refclock, does it keep this
device open persistently? Or does it close and re-open it for every
poll? Reason I ask is that a separate process is seemingly still
able to `open("/dev/pps0", O_ACCMODE)` and even block on pulses with
`ioctl` whilst chrony is tracking the same source. Even if locks are
not being used in one or both processes, I'm concerned that under
certain conditions one could starve the other of data? Or is my
understanding of this LinuxPPS device incorrect?
It's opened persistently and chrony doesn't lock the device. Both ntpd
and gpsd don't seem to do that either. IIRC there can be multiple
readers watching the same pps device, the only problem I saw was when
one set it to capture asserts and the other to capture clears, the one
started earlier wasn't getting any events.