Changeset 92476 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- Nov 17, 2021 12:29:12 PM (3 years ago)
- svn:sync-xref-src-repo-rev:
- 148335
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllGstSlatEpt.cpp.h
r92472 r92476 17 17 18 18 #if PGM_GST_TYPE == PGM_TYPE_EPT 19 DECLINLINE(int) PGM_GST_SLAT_NAME_EPT(WalkReturnNotPresent)(PVMCPUCC pVCpu, PPGMPTWALK pWalk, uint64_t uEntry, uint8_t uLevel) 20 { 21 pWalk->fNotPresent = true; 22 pWalk->uLevel = uLevel; 19 DECLINLINE(int) PGM_GST_SLAT_NAME_EPT(WalkReturnNotPresent)(PCVMCPUCC pVCpu, PPGMPTWALK pWalk, uint64_t uEntry, uint8_t uLevel) 20 { 23 21 static PGMSLATFAIL const s_aEptViolation[] = { PGMSLATFAIL_EPT_VIOLATION, PGMSLATFAIL_EPT_VIOLATION_CONVERTIBLE }; 24 22 uint8_t const fEptVeSupported = pVCpu->CTX_SUFF(pVM)->cpum.ro.GuestFeatures.fVmxEptXcptVe; 25 23 uint8_t const idxViolationType = fEptVeSupported & !RT_BF_GET(uEntry, VMX_BF_EPT_PT_SUPPRESS_VE); 24 25 pWalk->fNotPresent = true; 26 pWalk->uLevel = uLevel; 26 27 pWalk->enmSlatFail = s_aEptViolation[idxViolationType]; 27 28 return VERR_PAGE_TABLE_NOT_PRESENT; … … 29 30 30 31 31 DECLINLINE(int) PGM_GST_SLAT_NAME_EPT(WalkReturnBadPhysAddr)(P VMCPUCC pVCpu, PPGMPTWALK pWalk, uint8_t uLevel, int rc)32 DECLINLINE(int) PGM_GST_SLAT_NAME_EPT(WalkReturnBadPhysAddr)(PCVMCPUCC pVCpu, PPGMPTWALK pWalk, uint8_t uLevel, int rc) 32 33 { 33 34 AssertMsg(rc == VERR_PGM_INVALID_GC_PHYSICAL_ADDRESS, ("%Rrc\n", rc)); NOREF(rc); NOREF(pVCpu); 34 35 pWalk->fBadPhysAddr = true; 35 36 pWalk->uLevel = uLevel; 37 pWalk->enmSlatFail = PGMSLATFAIL_EPT_VIOLATION; 36 38 return VERR_PAGE_TABLE_NOT_PRESENT; 37 39 }
Note:
See TracChangeset
for help on using the changeset viewer.