On 27/02/2017 13:43, Peter Zijlstra wrote:
> On Mon, Feb 27, 2017 at 08:30:11PM +0800, Wanpeng Li wrote:
> 
>>> diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
>>> index 2a5cafd..542710b 100644
>>> --- a/arch/x86/kernel/kvmclock.c
>>> +++ b/arch/x86/kernel/kvmclock.c
>>> @@ -107,12 +107,12 @@ static inline void kvm_sched_clock_init(bool stable)
>>>  {
>>>         if (!stable) {
>>>                 pv_time_ops.sched_clock = kvm_clock_read;
>>> +               clear_sched_clock_stable();
>>>                 return;
>>>         }
>>>
>>>         kvm_sched_clock_offset = kvm_clock_read();
>>>         pv_time_ops.sched_clock = kvm_sched_clock_read;
>>> -       set_sched_clock_stable();
>>
>> This results in sched clock always unstable for kvm guest since there
>> is no invariant tsc cpuid bit exposed for kvm guest currently. 
> 
> What the heck is KVM_FEATURE_CLOCKSOURCE_STABLE_BIT /
> PVCLOCK_TSC_STABLE_BIT about then?

It checks that all the bugs in the host have been ironed out, and that
the host itself supports invtsc.

Paolo

Reply via email to