On 22/01/2016 11:15, Andrey Smetanin wrote: >> >> - unless KVM can use a master clock, it is incorrect to set up the TSC >> page this way; the sequence needs to be 0xFFFFFFFF in that case > 0xFFFFFFFF is not an invalid value for tsc page, > see https://lkml.org/lkml/2015/11/2/655 oh, I see now. >> - writing the TSC page must be done while all VCPUs are stopped, because >> the TSC page doesn't provide the possibility for the guest to retry in >> the middle of an update (like seqcount in Linux doess) > I think Windows guest gives tsc page address at boot time and protects > against other vcpu's tsc page access. Sometimes the TSC is detected to be unstable and Linux switches to another clocksource. At least in that case you can get a write to the TSC page while the guest is running. In that case it would be enough to write a zero to tsc_sequence, which _can_ be done atomically while the guest is running. However, KVM already has a mechanism to stop all VCPUs (KVM_REQ_MASTERCLOCK_UPDATE) so we might as well use it. Paolo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html