diff options
author | Wanpeng Li <wanpengli@tencent.com> | 2021-03-04 08:35:18 +0800 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2021-03-12 13:18:52 -0500 |
commit | 35737d2db2f4567106c90060ad110b27cb354fa4 (patch) | |
tree | 769238079599a5f3d185b68494c4379c9311c3c2 /arch/x86/kvm/lapic.c | |
parent | 8df9f1af2eced9720f71cf310275d81c1bf07a06 (diff) | |
download | lwn-35737d2db2f4567106c90060ad110b27cb354fa4.tar.gz lwn-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/x86/kvm/lapic.c')
-rw-r--r-- | arch/x86/kvm/lapic.c | 1 |
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); |