Miroslav Lichvar
d8fc5fee0a
Run configure tests with LDFLAGS
2010-08-17 12:31:03 +02:00
Miroslav Lichvar
eeb73b3670
Fix updating of best_single_sample
2010-08-16 16:44:49 +02:00
Miroslav Lichvar
2f2e524bc6
Don't use timezone parameter in gettimeofday and settimeofday calls
2010-08-12 14:43:26 +02:00
Miroslav Lichvar
6b0198c2d7
Replace all CROAK calls with assert or LOG_FATAL
...
Remove croak() and use assert() or LOG_FATAL() everywhere. Hopefully
the problems with debugging mentioned in the croak() comment are long gone.
2010-08-12 14:30:05 +02:00
Miroslav Lichvar
2a64b75893
Regenerate critical values for number of runs
...
Generate more values to allow regression with 128 samples. Possibly a
different approach was used to generate the values, or the previous table
was actually using 11% critical region and had an extra value in the
12th place.
2010-08-11 18:50:23 +02:00
Miroslav Lichvar
034e172033
Assert number of points in regress functions
2010-08-11 18:25:32 +02:00
Miroslav Lichvar
1faeb45063
Update offset correction errors only when needed
2010-08-11 17:16:16 +02:00
Miroslav Lichvar
fa84496423
Fix updating of nano slew offset correction error
2010-08-11 16:57:19 +02:00
Miroslav Lichvar
a3d47ffc81
Store sourcestats samples in circular buffer
...
The samples now don't have to be moved when pruning the register.
2010-08-10 16:39:52 +02:00
Miroslav Lichvar
d841c86a6e
Cleanup sourcestats code a bit
2010-08-10 15:35:17 +02:00
Miroslav Lichvar
3b4e4b785d
Change length of resid buffer to MAX_POINTS
2010-08-06 14:51:37 +02:00
Miroslav Lichvar
7ba6b617a1
Remove weights from sourcestats record
...
Weights are calculated before each regression call, no need to store them.
2010-08-06 14:39:09 +02:00
Miroslav Lichvar
100f732e20
Remove SST_DoUpdateRegression
...
The function is not used anywhere and it requires weights to be stored
sourcestats.
2010-08-06 14:36:56 +02:00
Miroslav Lichvar
cb28aeeacc
Add nanosecond slewing to Linux driver
...
For offset adjustments below 10 microseconds use kernel PLL with
locked frequency and 1s time constant.
2010-08-06 11:50:35 +02:00
Miroslav Lichvar
7994b31de4
Reset adjtime offset on start
2010-08-05 13:27:52 +02:00
Miroslav Lichvar
6dcf3238f6
Clarify some cmdmon warning messages
2010-06-14 09:47:07 +02:00
Miroslav Lichvar
f6320e7050
Don't hang in our_round
...
The routine could loop infinitely when rounding a large value, replace
it with our_lround.
2010-06-07 14:19:58 +02:00
Miroslav Lichvar
597bb80d18
Set minimum allowed skew to 1e-12
2010-05-26 16:55:49 +02:00
Miroslav Lichvar
9775f3a030
Read chrony.conf before checking/writing pid file
...
This fixes the pidfile directive.
2010-05-20 16:10:51 +02:00
Miroslav Lichvar
a080d00352
Add rtcsync directive
...
The directive enables the 11 minute kernel mode. It cannot be used
when the normal RTC tracking is enabled.
2010-05-14 14:41:11 +02:00
Miroslav Lichvar
5fb0a9d53b
Rehash NTP source table after removing source
...
This is needed to avoid breaking a probe sequence and losing another
source. It is costly, but it's not expected to happen frequently.
2010-05-13 18:29:00 +02:00
Miroslav Lichvar
40d82675bd
Make use of UTI_AdjustTimeval in slew handlers
2010-05-07 18:52:05 +02:00
Miroslav Lichvar
f851e1f90e
Fix RTC slew handler
...
The frequency adjustment needs to be done in the opposite direction.
2010-05-07 18:51:35 +02:00
Miroslav Lichvar
73d775c8b4
Don't use AI_ADDRCONFIG hint
...
We want to get IPv4/6 addresses even if the local system currently has
no IPv4/6 address configured.
2010-04-28 19:15:35 +02:00
Miroslav Lichvar
97f3e9404a
Change online status also for unresolved sources
2010-04-28 17:18:03 +02:00
Miroslav Lichvar
83da131e99
Retry name resolving before marking sources online
2010-04-28 15:45:05 +02:00
Miroslav Lichvar
7973aef7b7
Don't log network is unreachable errors
2010-04-27 15:56:48 +02:00
Miroslav Lichvar
9a3bdcc20b
Fix name resolving when IPv6 support is disabled
2010-04-27 14:35:28 +02:00
Miroslav Lichvar
aa91c608f4
Add delayed name resolving for servers and peers
...
Resolving is retried in increasing intervals (maximum is one hour)
until it succeeds or fails with a non-temporary error.
Unresolved sources are included in the activity report as offline
sources and the online command can be used to retry it immediately.
This could be improved by resolving in a separate thread/process
to avoid blocking.
2010-04-27 14:35:28 +02:00
Miroslav Lichvar
3d260d41b3
Don't retry resolving in DNS_Name2IPAddress
...
Instead of retrying to resolve it in the function and blocking for a
long time, return a TryAgain status and let the caller retry it later if
necessary.
2010-04-27 14:35:28 +02:00
Miroslav Lichvar
2458325c09
Merge NSR/NCR server and peer functions
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
ab68a9d1d3
Set maxupdateskew to 1000 ppm by default
...
This will prevent from using unreliable frequency estimate on iburst
when starting without drift file.
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
93b5b08bed
Add iburst server option
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
be4369936b
Clamp tick value before calling adjtimex
...
If tick is outside allowed adjtimex range, clamp it and log a warning
instead of aborting.
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
1a7415a6ab
Return actual frequency in drv_set_freq functions
...
This is needed to keep sourcestats accurate when the actual frequency is
different from the requested frequency due to clamping (or possibly
rounding in future system drivers).
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
c15db71f9e
Add dispersion after Linux makestep
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
74cb1c877c
Mark source unreachable after offline burst
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
a949ab6935
Increase burst polling interval
...
To avoid getting KoD RATE from NTP server (triggering discard minimum 1)
when burst sampling, increase polling interval to 2 seconds.
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
f0fd7099c0
Stop burst sampling when received KoD RATE
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
e0009f9f40
Update drift file at most once per hour
...
Instead of writing to the file on every reference update, update it
on first update, on exit and otherwise only once per hour.
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
14d2576924
Remove absolute frequency from handler parameters
...
None of the current handlers really need it and with temperature
compensation enabled it would be necessary to undo the compensation
before passing it to the handlers.
2010-04-27 14:35:27 +02:00
Miroslav Lichvar
c386d11765
Add temperature compensation
...
A new tempcomp directive can be used to specify a file for reading
current temperature, update interval and compensation coefficients. The
clock frequency corrections are applied in local module and are invisible
in upper layers. The measurements and corrections can be logged to
tempcomp.log file.
2010-04-27 14:35:11 +02:00
Miroslav Lichvar
f12bc10917
Add fallback drifts
...
Fallback drifts are long-term averages of the system clock drift
calculated over exponentially increasing intervals. They are used when
the clock is unsynchronised to avoid quickly drifting away from true
time if there was a short-term deviation in drift before the
synchronisation was lost.
2010-04-27 14:27:05 +02:00
Miroslav Lichvar
99d18abf59
Fix frequency accumulation
2010-04-21 13:59:37 +02:00
Miroslav Lichvar
bc29c84610
Fix possible memory leak in mkdir_and_parents()
2010-04-13 15:16:49 +02:00
Miroslav Lichvar
e78e65ef22
Refactor file logging
2010-04-13 15:16:41 +02:00
Håkan Johansson
f9103531c4
Avoid large times in chronyc sources / sourcestats overflowing lines
...
Main trouble was double values too large to be represented as ints being
converted to -INT_MAX and then passing the < 9999 cut.
2010-04-07 14:26:41 +02:00
Miroslav Lichvar
2ea87490f4
Mark offline sources unreachable
2010-04-02 15:55:58 +02:00
Miroslav Lichvar
5fb5551c36
Add refclock precision
2010-03-02 14:23:54 +01:00
Miroslav Lichvar
b9b0326d15
Reduce noise in refclock sample dispersions
...
Use the estimated dispersion only if it's higher than long-term average.
This should improve performance with short polling intervals.
2010-03-02 14:23:50 +01:00