Update linux_freq_scale and linux_hz documentation

This commit is contained in:
Miroslav Lichvar 2014-01-10 13:25:39 +01:00
parent 2a981b7d39
commit 19dbe52930
2 changed files with 10 additions and 22 deletions

View file

@ -1126,7 +1126,7 @@ directives can occur in any order in the file.
* keyfile directive:: Specify location of file containing keys * keyfile directive:: Specify location of file containing keys
* leapsectz directive:: Read leap second data from tz database * leapsectz directive:: Read leap second data from tz database
* linux_freq_scale directive:: Define a non-standard value to compensate the kernel frequency bias * linux_freq_scale directive:: Define a non-standard value to compensate the kernel frequency bias
* linux_hz directive:: Define a non-standard value of the kernel HZ constant * linux_hz directive:: Define a non-standard value of the kernel USER_HZ constant
* local directive:: Allow unsynchronised machine to act as server * local directive:: Allow unsynchronised machine to act as server
* lock_all directive:: Require that chronyd be locked into RAM * lock_all directive:: Require that chronyd be locked into RAM
* log directive:: Make daemon log certain sets of information * log directive:: Make daemon log certain sets of information
@ -1794,16 +1794,10 @@ Wed Dec 31 23:59:60 UTC 2008
@subsection linux_freq_scale @subsection linux_freq_scale
(This option only applies to Linux). (This option only applies to Linux).
By default, chronyd will find the value of @code{HZ} and @code{SHIFT_HZ} from This option sets a scale factor needed to control the frequency of the clock by
kernel header files at compile time. An internal value called the @code{adjtimex()} system call exactly. By default, the value is determined
@code{freq_scale} is calculated from this. By default it is (1<<SHIFT_HZ)/HZ, by the version of the running kernel. In recent kernels it is always 1.0 (i.e.
except for the case HZ=100, when special case code is used which leads to the no scaling is needed).
value 128/128.125. If you're running chronyd on the system where it was built,
the value it has should be right, and you don't need to worry about this
option.
This option is provided for people who move a pre-built chronyd onto a system
where the method by which the kernel computes the reciprocal of this value has been changed or where the HZ and SHIFT_HZ constants differ from those on the system where chronyd was built.
An example of the command is An example of the command is
@ -1816,14 +1810,10 @@ linux_freq_scale 0.99902439
@subsection linux_hz @subsection linux_hz
(This option only applies to Linux). (This option only applies to Linux).
By default, chronyd will find the value of @code{HZ} from a kernel header file This option defines the value of the kernel @code{USER_HZ} constant, which is
at compile time. @code{HZ} is the nominal number of timer interrupts per needed to use the @code{adjtimex()} system call correctly. By default, its
second. If you're running chronyd on the system where it was built, the value value is determined from the running kernel automatically and there should
it has should be right, and you don't need to worry about this option. rarely be a need to use this option.
This option is provided for people who move a pre-built chronyd onto a system
where the value of HZ in the kernel headers has been changed from the default
value.
An example of the command is An example of the command is

View file

@ -83,9 +83,7 @@ static int nominal_tick;
per day). */ per day). */
static double freq_scale; static double freq_scale;
/* The HZ value from the kernel header file (may be over-ridden from config /* The kernel HZ constant (USER_HZ in recent kernels). */
file, e.g. if chronyd binary is moved to a box whose kernel was built with a
different HZ value). */
static int hz; static int hz;
static double dhz; /* And dbl prec version of same for arithmetic */ static double dhz; /* And dbl prec version of same for arithmetic */