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 - 07:07:13 EST


On 11/09/2018 12:25, Borislav Petkov wrote:
> On Tue, Sep 11, 2018 at 12:19:13PM +0200, Paolo Bonzini wrote:
>> 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.
^^^^^^^^^^^^

unsynchronized

>
> Why?
>
> Why can't it be a single pointer to a struct pvclock_vsyscall_time_info
> shared between all vCPUs?
>
> Or does each vCPU write its own specific stuff into it so it has to be
> per-vCPU?

If the host TSCs are unsynchronized then yes, that's what happens. And
you can do live migration from synchronized to unsynchronized.

Paolo