Lines Matching full:nmi
943 return ("nmi"); in intrtype_to_str()
1114 * Once an NMI is injected it blocks delivery of further NMIs until the handler
1115 * executes an IRET. The IRET intercept is enabled when an NMI is injected to
1116 * to track when the vcpu is done handling the NMI.
1146 * another NMI into the vcpu before the "iret" has actually executed. in clear_nmi_blocking()
1149 * it will trap back into the hypervisor. If an NMI is pending for in clear_nmi_blocking()
1157 * Set 'intr_shadow' to prevent an NMI from being injected on the in clear_nmi_blocking()
1293 { .reason = VMCB_EXIT_NMI, .str = "nmi" }, in exit_reason_to_str()
1414 case VMCB_EXIT_NMI: /* external NMI */ in svm_vmexit()
1780 /* NMI event has priority over interrupts. */ in svm_inj_interrupts()
1784 * Can't inject another NMI if the guest has not in svm_inj_interrupts()
1785 * yet executed an "iret" after the last NMI. in svm_inj_interrupts()
1787 SVM_CTR0(vcpu, "Cannot inject NMI due " in svm_inj_interrupts()
1788 "to NMI-blocking"); in svm_inj_interrupts()
1791 * Can't inject an NMI if the vcpu is in an intr_shadow. in svm_inj_interrupts()
1793 SVM_CTR0(vcpu, "Cannot inject NMI due to " in svm_inj_interrupts()
1800 * then defer the NMI until after that. in svm_inj_interrupts()
1802 SVM_CTR1(vcpu, "Cannot inject NMI due to " in svm_inj_interrupts()
1819 /* Inject NMI, vector number is not used */ in svm_inj_interrupts()
1823 /* virtual NMI blocking is now in effect */ in svm_inj_interrupts()