Changeset 17231 in vbox for trunk/src/VBox
- Timestamp:
- Mar 2, 2009 10:27:39 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp
r17203 r17231 4118 4118 static void pgmPoolFlushAllInt(PPGMPOOL pPool) 4119 4119 { 4120 PVM pVM = pPool->CTX_SUFF(pVM); 4121 4120 4122 STAM_PROFILE_START(&pPool->StatFlushAllInt, a); 4121 4123 LogFlow(("pgmPoolFlushAllInt:\n")); … … 4130 4132 } 4131 4133 4134 #ifdef VBOX_WITH_PGMPOOL_PAGING_ONLY 4135 /* Unmap the old CR3 value before flushing everything. */ 4136 int rc = PGM_BTH_PFN(UnmapCR3, pVM)(pVM); 4137 AssertRC(rc); 4138 #endif 4139 4132 4140 /* 4133 4141 * Nuke the free list and reinsert all pages into it. … … 4138 4146 4139 4147 #ifdef IN_RING3 4140 Assert(pPage->Core.Key == MMPage2Phys(p Pool->pVMR3, pPage->pvPageR3));4148 Assert(pPage->Core.Key == MMPage2Phys(pVM, pPage->pvPageR3)); 4141 4149 #endif 4142 4150 #ifdef PGMPOOL_WITH_MONITORING … … 4193 4201 * Clear all the GCPhys links and rebuild the phys ext free list. 4194 4202 */ 4195 for (PPGMRAMRANGE pRam = p Pool->CTX_SUFF(pVM)->pgm.s.CTX_SUFF(pRamRanges);4203 for (PPGMRAMRANGE pRam = pVM->pgm.s.CTX_SUFF(pRamRanges); 4196 4204 pRam; 4197 4205 pRam = pRam->CTX_SUFF(pNext)) … … 4251 4259 if (pPage->fMonitored) 4252 4260 { 4253 PVM pVM = pPool->CTX_SUFF(pVM);4254 4261 int rc = PGMHandlerPhysicalChangeCallbacks(pVM, pPage->GCPhys & ~(RTGCPHYS)(PAGE_SIZE - 1), 4255 4262 pPool->pfnAccessHandlerR3, MMHyperCCToR3(pVM, pPage), … … 4275 4282 * Finally, assert the FF. 4276 4283 */ 4277 VM_FF_SET(p Pool->CTX_SUFF(pVM), VM_FF_PGM_SYNC_CR3);4284 VM_FF_SET(pVM, VM_FF_PGM_SYNC_CR3); 4278 4285 4279 4286 STAM_PROFILE_STOP(&pPool->StatFlushAllInt, a);
Note:
See TracChangeset
for help on using the changeset viewer.