Re: nVMX: Shadowing of CPU_BASED_VM_EXEC_CONTROL broken

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux