On Fri, 2013-05-24 at 16:41 -0300, Marcelo Tosatti wrote: > On Fri, May 24, 2013 at 06:11:16AM -0400, Vadim Rozenfeld wrote: > > > Is there a better option? > > > > > If setting TscSequence to zero makes Windows fall back to the MSR this is a > > better option. > > > > +1 > > This is why MS has two different mechanisms: > > iTSC as a primary, reference counters as a fall-back. > > Ok, is it documented that transition > > iTSC valid (Sequence != 0 and != 0xFFFFFFFF) -> > iTSC not valid but ref MSR valid (Sequence = 0), > > is a valid transition? > Yes, it's true. > It was not obvious for me. Can you point to documentation? > > Hypervisor Functional Specification v2.0a: For Windows Server 2008 R2 http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=18673 "15.4.3.3 Reference TSC during Save/Restore and Migration To address migration scenarios to physical platforms which do not support iTSC, the TscSequence field is used. In the event a guest partition is migrated from an iTSC capable host to a non-iTSC capable host, the hypervisor sets TscSequence to the special value of 0x0, which directs the guest operating system to fall back to a different clock source (the virtual PM timer)." Now what the virtual PM timer is - if hypervisor provides PM Timer assist support (HvPartitionPropertyPmTimerAssist partition property), it will use partition reference counters to calculate PM Timer value. If partition has no HvPartitionPropertyPmTimerAssist - guest will use reference counters MSR directly. Currently we don't support PM timer assist, so TscSequence 0x0 means fallback to reference counters. -- 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