Changeset 82896 in vbox
- Timestamp:
- Jan 28, 2020 9:43:45 PM (5 years ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp
r82895 r82896 4995 4995 int rc = VMMRZCallRing3NoCpu(pVM, VMMCALLRING3_PGM_POOL_GROW, 0); 4996 4996 #endif 4997 if (RT_FAILURE(rc)) 4998 return rc; 4997 if (rc == VINF_SUCCESS) 4998 { /* likely */ } 4999 else 5000 { 5001 if (RT_FAILURE(rc)) 5002 return rc; 5003 } 5004 4999 5005 STAM_PROFILE_ADV_RESUME(&pPool->StatAlloc, a); 5000 5006 if (pPool->iFreeHead != NIL_PGMPOOL_IDX) -
trunk/src/VBox/VMM/VMMR0/PGMR0Pool.cpp
r82567 r82896 46 46 PPGMPOOL pPool = pGVM->pgm.s.pPoolR0; 47 47 AssertReturn(pPool->cCurPages < pPool->cMaxPages, VERR_PGM_POOL_MAXED_OUT_ALREADY); 48 AssertReturn(pPool->pVMR3 == pGVM->pVMR3, VERR_PGM_POOL_IPE); 49 AssertReturn(pPool->pVMR0 == pGVM, VERR_PGM_POOL_IPE); 48 50 49 51 /* With 32-bit guests and no EPT, the CR3 limits the root pages to low … … 139 141 RTR0MemObjFree(hMemObj, true /*fFreeMappings*/); 140 142 } 143 if (cCurPages > 0) 144 rc = -rc; 145 else 146 LogRel(("PGMR0PoolGrow: rc=%Rrc cNewPages=%#x cCurPages=%#x cMaxPages=%#x fCanUseHighMemory=%d\n", 147 rc, cNewPages, cCurPages, cMaxPages, fCanUseHighMemory)); 141 148 } 142 149 RTCritSectLeave(&pGVM->pgmr0.s.PoolGrowCritSect); 143 return VINF_SUCCESS;150 return rc; 144 151 } 145 152 -
trunk/src/VBox/VMM/VMMR3/PGMPool.cpp
r82895 r82896 485 485 /* This used to do a lot of stuff, but it has moved to ring-0 (PGMR0PoolGrow). */ 486 486 AssertReturn(pVM->pgm.s.pPoolR3->cCurPages < pVM->pgm.s.pPoolR3->cMaxPages, VERR_PGM_POOL_MAXED_OUT_ALREADY); 487 return VMMR3CallR0Emt(pVM, pVCpu, VMMR0_DO_PGM_POOL_GROW, 0, NULL); 487 int rc = VMMR3CallR0Emt(pVM, pVCpu, VMMR0_DO_PGM_POOL_GROW, 0, NULL); 488 if (rc == VINF_SUCCESS) 489 return rc; 490 LogRel(("PGMR3PoolGrow: rc=%Rrc cCurPages=%#x cMaxPages=%#x\n", 491 rc, pVM->pgm.s.pPoolR3->cCurPages, pVM->pgm.s.pPoolR3->cMaxPages)); 492 return rc; 488 493 } 489 494
Note:
See TracChangeset
for help on using the changeset viewer.