Re: [PATCH 3/5 V5] Add ioctl for KVMCLOCK_GUEST_STOPPED

From: Eric B Munson
Date: Thu Dec 08 2011 - 10:25:21 EST


On Wed, 07 Dec 2011, Avi Kivity wrote:

> On 12/05/2011 10:19 PM, Eric B Munson wrote:
> > Now that we have a flag that will tell the guest it was suspended, create an
> > interface for that communication using a KVM ioctl.
> >
> > @@ -3295,6 +3295,10 @@ long kvm_arch_vcpu_ioctl(struct file *filp,
> >
> > goto out;
> > }
> > + case KVMCLOCK_GUEST_PAUSED: {
> > + r = kvm_set_guest_paused(vcpu);
> > + break;
> > + }
> > default:
> > r = -EINVAL;
> > }
> >
>
> You could also do this purely from userspace by reading the kvmclock msr
> and updating it. However, it's better to do this in the kernel to avoid
> distributing responsibility for kvmclock across too many cooks.
>
> --
> error compiling committee.c: too many arguments to function
>

As stated in the cover letter, per Marcelo's suggestion I already tried this
method and it resulted in the guest wall clock skewing by the amount of time
the guest was suspended. This places a new burden on the guest to be running
ntpd or equivslent to keep the wall clock correct.

Eric

Attachment: signature.asc
Description: Digital signature