Re: [PATCH v3 0/2] hv_util: adjust system time smoothly

From: Stephen Hemminger
Date: Tue Jan 17 2017 - 11:37:45 EST


On Tue, 17 Jan 2017 16:27:17 +0100
Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> wrote:

> With TimeSync version 4 protocol support we started updating system time
> continuously through the whole lifetime of Hyper-V guests. Every 5 seconds
> there is a time sample from the host which triggers do_settimeofday[64]().
> While the time from the host is very accurate such adjustments may cause
> issues:
> - Time is jumping forward and backward, some applications may misbehave.
> - In case an NTP server runs in parallel and uses something else for time
> sync (network, PTP,...) system time will never converge.
> - Systemd starts annoying you by printing "Time has been changed" every 5
> seconds to the system log.
>
> Instead of doing in-kernel time adjustments offload the work to an
> NTP client by exposing TimeSync messages as a PTP device. Users may now
> decide what they want to use as a source.
>
> Changes since v2:
> - Implement Hyper-V PTP device instead of doint in-kernel time sync.
>
> Changes since "[PATCH RFC] hv_utils: implement Hyper-V PTP source":
> - Richard Cochran: implement .adjfreq, .adjtime, .settime64 returning
> -EOPNOTSUPP.
> - Olaf Hering: change IS_ERR->IS_ERR_OR_NULL as CONFIG_PTP_1588_CLOCK
> can be disabled.
> - Thomas Gleixner: formatting fixes, comments added.
>
> Vitaly Kuznetsov (2):
> hv_util: switch to using timespec64
> hv_utils: implement Hyper-V PTP source
>
> drivers/hv/hv_util.c | 142 +++++++++++++++++++++++++++++++++++++++++----------
> 1 file changed, 116 insertions(+), 26 deletions(-)
>

It would be good to update Documentation files to describe any configuration needed.