Re: Fixing timekeeping for rumprun/hw

  • From: Justin Cormack <justin@xxxxxxxxxxxxxxxxxxxxx>
  • To: Anil Madhavapeddy <anil@xxxxxxxxxx>
  • Date: Fri, 19 Jun 2015 18:24:54 +0100

On 19 June 2015 at 18:07, Anil Madhavapeddy <anil@xxxxxxxxxx> wrote:

On 19 Jun 2015, at 17:50, Justin Cormack <justin@xxxxxxxxxxxxxxxxxxxxx> wrote:

On 19 June 2015 at 17:42, Martin Lucina <martin@xxxxxxxxxx> wrote:
Also note that I have no idea what the stability of TSC is under KVM and
the current code makes no attempt to figure out if TSC is invariant,
constant, or anything else. So option 3) would also be a safe(r) bet in
that the PIT should "just work".

KVM has a PV clock, see summary of how it works here
https://rwmj.wordpress.com/tag/kvmclock/

Because clocks under virtualization are problematic, using this is
probably the best solution longer term.

On Xen HVM, you can still use the PV hypercall to map the shared_info
page and get the PV clock from there. Does all of that "just work"
from the NetBSD Xen PCI bridge device driver and Rump/Xen?

No one has looked at Xen/HVM yet as far as I know; upstream NetBSD
does not support PVHVM yet which would be one approach. Now Amazon
seem to be phasing out PV on favour of PV on HVM I guess this is
getting more urgent.

Justin

Other related posts: