diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c index 83be2a3032..4477ed9699 100644 --- a/xen/arch/x86/traps.c +++ b/xen/arch/x86/traps.c @@ -1804,7 +1804,7 @@ static void nmi_dom0_report(unsigned int reason_idx) set_bit(reason_idx, nmi_reason(d)); - if ( test_and_set_bit(_VCPUF_nmi_pending, &v->vcpu_flags) ) + if ( !test_and_set_bit(_VCPUF_nmi_pending, &v->vcpu_flags) ) raise_softirq(NMI_SOFTIRQ); /* not safe to wake up a vcpu here */ }