summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorWanpeng Li <wanpengli@tencent.com>2021-03-04 08:35:18 +0800
committerPaolo Bonzini <pbonzini@redhat.com>2021-03-12 13:18:52 -0500
commit35737d2db2f4567106c90060ad110b27cb354fa4 (patch)
tree769238079599a5f3d185b68494c4379c9311c3c2 /arch
parent8df9f1af2eced9720f71cf310275d81c1bf07a06 (diff)
downloadlinux-stable-35737d2db2f4567106c90060ad110b27cb354fa4.tar.gz
linux-stable-35737d2db2f4567106c90060ad110b27cb354fa4.tar.bz2
linux-stable-35737d2db2f4567106c90060ad110b27cb354fa4.zip
KVM: LAPIC: Advancing the timer expiration on guest initiated write
Advancing the timer expiration should only be necessary on guest initiated writes. When we cancel the timer and clear .pending during state restore, clear expired_tscdeadline as well. Reviewed-by: Sean Christopherson <seanjc@google.com> Signed-off-by: Wanpeng Li <wanpengli@tencent.com> Message-Id: <1614818118-965-1-git-send-email-wanpengli@tencent.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kvm/lapic.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
index cb8ebfaccfb6..cc369b9ad8f1 100644
--- a/arch/x86/kvm/lapic.c
+++ b/arch/x86/kvm/lapic.c
@@ -2604,6 +2604,7 @@ int kvm_apic_set_state(struct kvm_vcpu *vcpu, struct kvm_lapic_state *s)
apic_update_ppr(apic);
hrtimer_cancel(&apic->lapic_timer.timer);
+ apic->lapic_timer.expired_tscdeadline = 0;
apic_update_lvtt(apic);
apic_manage_nmi_watchdog(apic, kvm_lapic_get_reg(apic, APIC_LVT0));
update_divide_count(apic);