I have a Windows 10 physical (laptop) host with Hyper-V installed and enabled and I am having a problem where for a rather vanilla Debian 9 guest installation, the clock isn't updated after the host is put to sleep for a while and then is waken back up again (I assume the guest is suspended with the host).
As far as I understand, this problem should be trivially handled by Hyper-V integration services, which are enabled both in the virtual machine settings (all integration services enabled) and in the guest (all the
hv_* modules are loaded), and where one of the services synchronizes time and makes sure it stays up to date.
So, why doesn't it work in my case? I don't have NTP installed and I don't want to, partially on principle (to troubleshoot the problem with Hyper-V specifically) and partially because the guest must work without Internet connection and remote host services. My host timezone is setup to UTC explicitly (I roam a lot with the laptop and have neither need nor wish to statically associate the guest with a particular timezone), and use
TZ variable as needed instead.
I've read a bunch of pages at Microsoft's and some Altaro articles which seemed very informed yet failed to enlighten me on this. I also have read a number of answers on Stack Exchange sites, where half recommend using NTP and other half are mostly about something else or just do not produce desired advice.
I understand that there is perhaps some signal that doesn't fire on the guest when the host gets back from sleep (as it would if you'd put the guest to sleep through ACPI, for instance), but shouldn't this be a solved problem?
What and where can I troubleshoot to make sure I can reliably close the lid on the laptop (putting it to sleep) and expect to come back to my guest with an up-to-date timestamp?