Re: [PATCH v6 5/5] x86/kvm: Avoid dynamic allocation of pvclock data when SEV is active

From: Paolo Bonzini
Date: Tue Sep 11 2018 - 06:19:21 EST


On 11/09/2018 12:01, Borislav Petkov wrote:
> On Tue, Sep 11, 2018 at 11:26:21AM +0200, Paolo Bonzini wrote:
>> Usually the kvmclock structs are all the same, but there is support for
>> old machines with inconsistent TSCs (across different sockets typically).
>
> Would that be a problem, though? Sounds like an "improvement" to me. :-)
>
> I mean, if we keep using the same TSC across all vCPUs, the guest will
> actually see a single TSC and thus have stable and synchronized TSCs.
> Unlike the host.

That's exactly what kvmclock is for, it provides a stable and
synchronized clock on top of unsynchronized TSCs. But that's also why
you need one struct per vCPU, at least in the synchronized case.

Paolo

> I.e., the guest will be better than the host! :-)
>