- Timestamp:
- Aug 27, 2010 10:56:44 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp
r32036 r32038 215 215 GstPte.u & X86_PTE_PG_MASK, 216 216 iShw); 217 ASMAtomicWrite Size(&uShw.pPT->a[iShw], 0);217 ASMAtomicWriteU32(&uShw.pPT->a[iShw].u, 0); 218 218 } 219 219 break; … … 279 279 pPage->idx, 280 280 iShw + i); 281 ASMAtomicWrite Size(&uShw.pPDPae->a[iShw+i], 0);281 ASMAtomicWriteU64(&uShw.pPDPae->a[iShw+i].u, 0); 282 282 } 283 283 … … 306 306 pPage->idx, 307 307 iShw2); 308 ASMAtomicWrite Size(&uShw.pPDPae->a[iShw2].u, 0);308 ASMAtomicWriteU64(&uShw.pPDPae->a[iShw2].u, 0); 309 309 } 310 310 } … … 389 389 pPage->idx, 390 390 iShw); 391 ASMAtomicWrite Size(&uShw.pPD->a[iShw].u, 0);391 ASMAtomicWriteU32(&uShw.pPD->a[iShw].u, 0); 392 392 } 393 393 } … … 421 421 pPage->idx, 422 422 iShw2); 423 ASMAtomicWrite Size(&uShw.pPD->a[iShw2].u, 0);423 ASMAtomicWriteU32(&uShw.pPD->a[iShw2].u, 0); 424 424 } 425 425 } … … 435 435 # endif 436 436 pgmPoolFree(pVM, uShw.pPD->a[iShw].u & X86_PDE_PG_MASK, pPage->idx, iShw); 437 ASMAtomicWrite Size(&uShw.pPD->a[iShw].u, 0);437 ASMAtomicWriteU32(&uShw.pPD->a[iShw].u, 0); 438 438 } 439 439 #endif … … 472 472 pPage->idx, 473 473 iShw); 474 ASMAtomicWrite Size(&uShw.pPDPae->a[iShw].u, 0);474 ASMAtomicWriteU64(&uShw.pPDPae->a[iShw].u, 0); 475 475 } 476 476 } … … 503 503 pPage->idx, 504 504 iShw2); 505 ASMAtomicWrite Size(&uShw.pPDPae->a[iShw2].u, 0);505 ASMAtomicWriteU64(&uShw.pPDPae->a[iShw2].u, 0); 506 506 } 507 507 } … … 544 544 pPage->idx, 545 545 iShw); 546 ASMAtomicWrite Size(&uShw.pPDPT->a[iShw].u, 0);546 ASMAtomicWriteU64(&uShw.pPDPT->a[iShw].u, 0); 547 547 } 548 548 … … 575 575 pPage->idx, 576 576 iShw2); 577 ASMAtomicWrite Size(&uShw.pPDPT->a[iShw2].u, 0);577 ASMAtomicWriteU64(&uShw.pPDPT->a[iShw2].u, 0); 578 578 } 579 579 } … … 597 597 pPage->idx, 598 598 iShw); 599 ASMAtomicWrite Size(&uShw.pPDPae->a[iShw].u, 0);599 ASMAtomicWriteU64(&uShw.pPDPae->a[iShw].u, 0); 600 600 } 601 601 /* paranoia / a bit assumptive. */ … … 614 614 pPage->idx, 615 615 iShw2); 616 ASMAtomicWrite Size(&uShw.pPDPae->a[iShw2].u, 0);616 ASMAtomicWriteU64(&uShw.pPDPae->a[iShw2].u, 0); 617 617 } 618 618 } … … 633 633 LogFlow(("pgmPoolMonitorChainChanging: pdpt iShw=%#x: %RX64 -> freeing it!\n", iShw, uShw.pPDPT->a[iShw].u)); 634 634 pgmPoolFree(pVM, uShw.pPDPT->a[iShw].u & X86_PDPE_PG_MASK, pPage->idx, iShw); 635 ASMAtomicWrite Size(&uShw.pPDPT->a[iShw].u, 0);635 ASMAtomicWriteU64(&uShw.pPDPT->a[iShw].u, 0); 636 636 } 637 637 /* paranoia / a bit assumptive. */ … … 644 644 LogFlow(("pgmPoolMonitorChainChanging: pdpt iShw2=%#x: %RX64 -> freeing it!\n", iShw2, uShw.pPDPT->a[iShw2].u)); 645 645 pgmPoolFree(pVM, uShw.pPDPT->a[iShw2].u & X86_PDPE_PG_MASK, pPage->idx, iShw2); 646 ASMAtomicWrite Size(&uShw.pPDPT->a[iShw2].u, 0);646 ASMAtomicWriteU64(&uShw.pPDPT->a[iShw2].u, 0); 647 647 } 648 648 } … … 663 663 LogFlow(("pgmPoolMonitorChainChanging: pml4 iShw=%#x: %RX64 -> freeing it!\n", iShw, uShw.pPML4->a[iShw].u)); 664 664 pgmPoolFree(pVM, uShw.pPML4->a[iShw].u & X86_PML4E_PG_MASK, pPage->idx, iShw); 665 ASMAtomicWrite Size(&uShw.pPML4->a[iShw].u, 0);665 ASMAtomicWriteU64(&uShw.pPML4->a[iShw].u, 0); 666 666 } 667 667 /* paranoia / a bit assumptive. */ … … 674 674 LogFlow(("pgmPoolMonitorChainChanging: pml4 iShw2=%#x: %RX64 -> freeing it!\n", iShw2, uShw.pPML4->a[iShw2].u)); 675 675 pgmPoolFree(pVM, uShw.pPML4->a[iShw2].u & X86_PML4E_PG_MASK, pPage->idx, iShw2); 676 ASMAtomicWrite Size(&uShw.pPML4->a[iShw2].u, 0);676 ASMAtomicWriteU64(&uShw.pPML4->a[iShw2].u, 0); 677 677 } 678 678 } … … 3005 3005 Pte.n.u1Write = 0; /* need to disallow writes when dirty bit tracking is still active. */ 3006 3006 3007 ASMAtomicWrite Size(&pPT->a[iPte].u, Pte.u);3007 ASMAtomicWriteU32(&pPT->a[iPte].u, Pte.u); 3008 3008 PGM_DYNMAP_UNUSED_HINT_VM(pVM, pPT); 3009 3009 return fRet;
Note:
See TracChangeset
for help on using the changeset viewer.