On 16/02/2026 10:15 am, Andrew Cooper wrote: >So what happens to the NMI we're trying to inject when NMIs are >currently blocked?
Ah, I see this... The handling flow will eventually land on the function svm_enable_intr_window with HVM_INTR_SHADOW_NMI. The logic inside the function svm_enable_intr_window will drive it to create a vintr and set up the VMCB to intercept that created vintr. I see that the code logic in svm_enable_intr_window should be extended to skip creating such vintr and just return the same as the handling with Event injected NMI when the GENERAL1_INTERCEPT_IRET is already set. >~Andrew --Abdelkareem
