Miroslav Lichvar pushed to branch master at chrony / chrony


Commits:
b9b338a8 by Miroslav Lichvar at 2024-11-05T15:51:43+01:00
refclock: rework update of reachability

Update the reachability register of a refclock source by 1 if a valid
measurement is received by the drivers between source polls, and not
only when it is accumulated to sourcestats, similarly to how
reachability works with NTP sources.

This avoids drops in the reported reachability when a PHC refclock is
dropping samples due to significant changes in the measured delay (e.g.
due to high PCIe load), or a PPS refclock dropping samples due to failed
lock.

- - - - -
12237bf2 by Miroslav Lichvar at 2024-11-05T16:03:40+01:00
refclock: stop requiring 4 samples in median filter

Reduce the minimum number of samples required by the filter from
min(4, length) to 1.

This makes the filtering less confusing. The sample lifetime is limited
to one poll and the default filtering of the SOCK refclock (where the
maximum number of samples per poll is unknown) is identical to the other
refclocks.

A concern with potential variability in number of samples per poll below
4 is switching between different calculations of dispersion in
combine_selected_samples() in samplefilt.c.

The 106-refclock test shows how the order of refclocks in the config can
impact the first filtered sample and selection. If the PPS refclock
follows SHM, a single low-quality PPS sample is accepted in the same
poll where SHM is selected and the initial clock correction started,
which causes larger skew later and delays the first selection of the PPS
refclock.

- - - - -


9 changed files:

- doc/chrony.conf.adoc
- doc/chronyc.adoc
- refclock.c
- refclock.h
- refclock_phc.c
- refclock_pps.c
- refclock_shm.c
- refclock_sock.c
- test/simulation/106-refclock


View it on GitLab: 
https://gitlab.com/chrony/chrony/-/compare/a5d73f692f86a6e9316c4c3eb519ddd8af8ba4a4...12237bf28393da84f3ab00569e741a271f50dea5

-- 
View it on GitLab: 
https://gitlab.com/chrony/chrony/-/compare/a5d73f692f86a6e9316c4c3eb519ddd8af8ba4a4...12237bf28393da84f3ab00569e741a271f50dea5
You're receiving this email because of your account on gitlab.com.


Reply via email to