summaryrefslogtreecommitdiffstats
path: root/kernel/arch/x86/kvm/x86.c
diff options
context:
space:
mode:
authorJiang, Yunhong <yunhong.jiang@intel.com>2016-07-21 17:36:18 +0000
committerGerrit Code Review <gerrit@172.30.200.206>2016-07-21 17:36:18 +0000
commitbceff3ff72bd362baf8a764f75a0e2a1f5aa0870 (patch)
treef09e369ded8c6d27338bb24d98f3ff224a7acf9d /kernel/arch/x86/kvm/x86.c
parent3a1e86d637c095effee0cff87c8ef67a2924a5ff (diff)
parentebcdab040619575a47ad19b18e7ed5c38d287336 (diff)
Merge "KVM: x86: support using the vmx preemption timer for tsc deadline timer"
Diffstat (limited to 'kernel/arch/x86/kvm/x86.c')
-rw-r--r--kernel/arch/x86/kvm/x86.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/arch/x86/kvm/x86.c b/kernel/arch/x86/kvm/x86.c
index 27419ba5a..e3e1a8c1b 100644
--- a/kernel/arch/x86/kvm/x86.c
+++ b/kernel/arch/x86/kvm/x86.c
@@ -2718,6 +2718,11 @@ void kvm_arch_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
rdtsc() - vcpu->arch.last_host_tsc;
if (tsc_delta < 0)
mark_tsc_unstable("KVM discovered backwards TSC");
+
+ if (kvm_lapic_hv_timer_in_use(vcpu) &&
+ kvm_x86_ops->set_hv_timer(vcpu,
+ kvm_get_lapic_tscdeadline_msr(vcpu)))
+ kvm_lapic_switch_to_sw_timer(vcpu);
if (check_tsc_unstable()) {
u64 offset = kvm_compute_tsc_offset(vcpu,
vcpu->arch.last_guest_tsc);