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