Messages in this thread | | | Subject | Re: [PATCH 2/2] KVM: x86: check_nested_events if there is an injectable NMI | From | Paolo Bonzini <> | Date | Thu, 23 Apr 2020 17:10:45 +0200 |
| |
On 23/04/20 16:42, Sean Christopherson wrote: > On Tue, Apr 14, 2020 at 04:11:07PM -0400, Cathy Avery wrote: >> With NMI intercept moved to check_nested_events there is a race >> condition where vcpu->arch.nmi_pending is set late causing > How is nmi_pending set late? The KVM_{G,S}ET_VCPU_EVENTS paths can't set > it because the current KVM_RUN thread holds the mutex, and the only other > call to process_nmi() is in the request path of vcpu_enter_guest, which has > already executed. >
I think the actual cause is priority inversion between NMI and interrupts, because NMI is added last in patch 1.
Paolo
| |