Changeset 43235 in vbox for trunk/src/VBox/VMM/VMMR0
- Timestamp:
- Sep 6, 2012 11:53:40 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/GMMR0.cpp
r43047 r43235 1215 1215 * shared pages will be 'left behind'.) 1216 1216 */ 1217 /** @todo r=bird: This scanning+freeing could be optimized in bound mode! */ 1217 1218 uint64_t cPrivatePages = pGVM->gmm.s.Stats.cPrivatePages; /* save */ 1218 1219 … … 1226 1227 { 1227 1228 uint32_t const cFreeChunksOld = pGMM->cFreedChunks; 1228 if (gmmR0CleanupVMScanChunk(pGMM, pGVM, pChunk)) 1229 if ( ( !pGMM->fBoundMemoryMode 1230 || pChunk->hGVM == pGVM->hSelf) 1231 && gmmR0CleanupVMScanChunk(pGMM, pGVM, pChunk)) 1229 1232 { 1230 1233 /* We left the giant mutex, so reset the yield counters. */ … … 1241 1244 } 1242 1245 if (pGMM->cFreedChunks != cFreeChunksOld) 1246 { 1247 fRedoFromStart = true; 1243 1248 break; 1249 } 1244 1250 } 1245 1251 } while (fRedoFromStart); … … 1349 1355 static bool gmmR0CleanupVMScanChunk(PGMM pGMM, PGVM pGVM, PGMMCHUNK pChunk) 1350 1356 { 1357 Assert(!pGMM->fBoundMemoryMode || pChunk->hGVM == pGVM->hSelf); 1358 1351 1359 /* 1352 1360 * Look for pages belonging to the VM.
Note:
See TracChangeset
for help on using the changeset viewer.