VirtualBox

Changeset 79224 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Jun 19, 2019 5:51:56 AM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
131402
Message:

VMM/HMVMXR0: Nested VMX: bugref:9180 Add VMCS shadowing related checks to hmR0VmxCheckGuestState.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp

    r79223 r79224  
    1048610486            HMVMX_CHECK_BREAK(!(u64Val & 0xfff), VMX_IGS_VMCS_LINK_PTR_RESERVED);
    1048710487            /** @todo Bits beyond the processor's physical-address width MBZ. */
    10488             /** @todo 32-bit located in memory referenced by value of this field (as a
    10489              *        physical address) must contain the processor's VMCS revision ID. */
    1049010488            /** @todo SMM checks. */
     10489            Assert(pVmcsInfo->HCPhysShadowVmcs == u64Val);
     10490            Assert(pVmcsInfo->pvShadowVmcs);
     10491            VMXVMCSREVID VmcsRevId;
     10492            VmcsRevId.u = *(uint32_t *)pVmcsInfo->pvShadowVmcs;
     10493            HMVMX_CHECK_BREAK(VmcsRevId.n.u31RevisionId == RT_BF_GET(pVM->hm.s.vmx.Msrs.u64Basic, VMX_BF_BASIC_VMCS_ID),
     10494                              VMX_IGS_VMCS_LINK_PTR_SHADOW_VMCS_ID_INVALID);
     10495            HMVMX_CHECK_BREAK(VmcsRevId.n.fIsShadowVmcs == !!(pVmcsInfo->u32ProcCtls2 & VMX_PROC_CTLS2_VMCS_SHADOWING),
     10496                              VMX_IGS_VMCS_LINK_PTR_NOT_SHADOW);
    1049110497        }
    1049210498
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette