Il 08/10/2014 11:51, Jan Kiszka ha scritto: >> > Could you point out where the other places L0 sets >> > CPU_BASED_VIRTUAL_INTR_PENDING before entering L2? > enable_irq_window(). I instrumented it, and it showed up right before > vmcs12 state became corrupted. But it would write to the vmcs02, not to the shadow VMCS; the shadow VMCS is active during copy_shadow_to_vmcs12/copy_vmcs12_to_shadow, and at no other time. It is not clear to me how the VIRTUAL_INTR_PENDING bit ended up from the vmcs02 (where it is perfectly fine) to the vmcs12. BTW, I think the two lines here that Wanpeng pointed out: exec_control = vmx_exec_control(vmx); /* L0's desires */ exec_control &= ~CPU_BASED_VIRTUAL_INTR_PENDING; exec_control &= ~CPU_BASED_VIRTUAL_NMI_PENDING; can be deleted, the bits will never be in vmx_exec_control(vmx), see setup_vmcs_config. Paolo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html