- Timestamp:
- Oct 9, 2008 9:28:09 AM (16 years ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/HWACCMInternal.h
r13105 r13113 296 296 /** Current CR4 mask. */ 297 297 uint64_t cr4_mask; 298 299 /** Current EPTP. */300 RTHCPHYS GCPhysEPTP;301 298 302 299 /** VMX MSR values */ -
trunk/src/VBox/VMM/VMMAll/PGMAll.cpp
r13106 r13113 1265 1265 } 1266 1266 1267 /** 1268 * Gets the current CR3 register value for the EPT paging memory context. 1269 * @returns CR3 value. 1270 * @param pVM The VM handle. 1271 */ 1272 VMMDECL(RTHCPHYS) PGMGetEPTCR3(PVM pVM) 1273 { 1274 return pVM->pgm.s.HCPhysNestedRoot; 1275 } 1267 1276 1268 1277 /** -
trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp
r13112 r13113 474 474 { 475 475 pVM->hwaccm.s.vmx.pfnSetupTaggedTLB = VMXR0SetupTLBEPT; 476 pVM->hwaccm.s.vmx.GCPhysEPTP = PGMGetHyperCR3(pVM);477 476 478 477 /* Default values for flushing. */ … … 1190 1189 RTHCPHYS GCPhys; 1191 1190 1192 AssertMsg( pVM->hwaccm.s.vmx.GCPhysEPTP == PGMGetHyperCR3(pVM), ("%VHp vs %VHp\n", pVM->hwaccm.s.vmx.GCPhysEPTP, PGMGetHyperCR3(pVM)));1193 GCPhys = pVM->hwaccm.s.vmx.GCPhysEPTP;1191 AssertMsg(PGMGetEPTCR3(pVM) == PGMGetHyperCR3(pVM), ("%VHp vs %VHp\n", PGMGetEPTCR3(pVM), PGMGetHyperCR3(pVM))); 1192 GCPhys = PGMGetEPTCR3(pVM); 1194 1193 1195 1194 Assert(!(GCPhys & 0xfff)); … … 2950 2949 2951 2950 Assert(pVM->hwaccm.s.fNestedPaging); 2952 descriptor[0] = pVM->hwaccm.s.vmx.GCPhysEPTP;2951 descriptor[0] = PGMGetEPTCR3(pVM); 2953 2952 descriptor[1] = GCPhys; 2954 2953 int rc = VMXR0InvEPT(enmFlush, &descriptor[0]);
Note:
See TracChangeset
for help on using the changeset viewer.