qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v7 0/3] hw/acpi: Add vmclock device


From: David Woodhouse
Subject: Re: [PATCH v7 0/3] hw/acpi: Add vmclock device
Date: Fri, 17 Jan 2025 09:26:19 +0100
User-agent: Evolution 3.52.3-0ubuntu1

On Thu, 2025-01-16 at 09:44 -0500, Michael S. Tsirkin wrote:
> On Thu, Jan 16, 2025 at 01:59:40PM +0000, David Woodhouse wrote:
> > (Posting one last time with the header commits split out).
> > 
> > The vmclock device addresses the problem of live migration with
> > precision clocks. The tolerances of a hardware counter (e.g. TSC) are
> > typically around ±50PPM. A guest will use NTP/PTP/PPS to discipline that
> > counter against an external source of 'real' time, and track the precise
> > frequency of the counter as it changes with environmental conditions.
> > 
> > When a guest is live migrated, anything it knows about the frequency of
> > the underlying counter becomes invalid. It may move from a host where
> > the counter running at -50PPM of its nominal frequency, to a host where
> > it runs at +50PPM. There will also be a step change in the value of the
> > counter, as the correctness of its absolute value at migration is
> > limited by the accuracy of the source and destination host's time
> > synchronization.
> > 
> > The device exposes a shared memory region to guests, which can be mapped
> > all the way to userspace. In the first phase, this merely advertises a
> > 'disruption_marker', which indicates that the guest should throw away any
> > NTP synchronization it thinks it has, and start again.
> > 
> > Because the region can be exposed all the way to userspace, applications
> > can still use time from a fast vDSO 'system call', and check the
> > disruption marker to be sure that their timestamp is indeed truthful.
> > 
> > The structure also allows for the precise time, as known by the host, to
> > be exposed directly to guests so that they don't have to wait for NTP to
> > resync from scratch.
> > 
> > The values and fields are based on the nascent virtio-rtc specification,
> > and the intent is that a version (hopefully precisely this version) of
> > this structure will be included as an optional part of that spec. In the
> > meantime, a simple ACPI device along the lines of VMGENID is perfectly
> > sufficient and is compatible with what's being shipped in certain
> > commercial hypervisors.
> > 
> > Linux guest support was merged into the 6.13-rc1 kernel:
> > https://git.kernel.org/torvalds/c/205032724226
> 
> 
> 
> Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
> 
> feel free to merge.

On doing a final rebase and test, I found it had already been merged
via your tree anyway :)

Attachment: smime.p7s
Description: S/MIME cryptographic signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]