]> git.ipfire.org Git - thirdparty/chrony.git/commitdiff
sources: combine frequencies by variance instead of skew
authorMiroslav Lichvar <mlichvar@redhat.com>
Fri, 17 Aug 2018 08:46:19 +0000 (10:46 +0200)
committerMiroslav Lichvar <mlichvar@redhat.com>
Tue, 21 Aug 2018 08:15:19 +0000 (10:15 +0200)
This seems to slightly improve the stability.

sources.c

index 658938f67f6957ee4fc30d6827e0064202e14d0c..008af85e920cc2ce7030a9e2480888227bec2307 100644 (file)
--- a/sources.c
+++ b/sources.c
@@ -549,7 +549,7 @@ combine_sources(int n_sel_sources, struct timespec *ref_time, double *offset,
     elapsed = UTI_DiffTimespecsToDouble(ref_time, &src_ref_time);
     src_offset += elapsed * src_frequency;
     offset_weight = 1.0 / sources[index]->sel_info.root_distance;
-    frequency_weight = 1.0 / src_skew;
+    frequency_weight = 1.0 / (src_frequency_sd * src_frequency_sd);
 
     DEBUG_LOG("combining index=%d oweight=%e offset=%e osd=%e fweight=%e freq=%e fsd=%e skew=%e",
               index, offset_weight, src_offset, src_offset_sd,