Lines Matching defs:pPageRec

458         PCSAMPAGEREC pPageRec = (PCSAMPAGEREC)RTAvlPVGetBestFit(&pVM->csam.s.pPageTree, 0, true);
459 if (!pPageRec)
461 csamRemovePageRecord(pVM, pPageRec->page.pPageGC);
1623 PCSAMPAGEREC pPageRec;
1672 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)addr);
1673 if (pPageRec)
1675 if ( GCPhys == pPageRec->page.GCPhys
1683 Log(("CSAMR3FlushPage: page %RRv has changed -> FLUSH (rc=%Rrc) (Phys: %RGp vs %RGp)\n", addr, rc, GCPhys, pPageRec->page.GCPhys));
1692 pPageRec->page.GCPhys = 0;
1693 pPageRec->page.fFlags = 0;
1694 rc = PGMGstGetPage(pVCpu, addr, &pPageRec->page.fFlags, &pPageRec->page.GCPhys);
1696 pPageRec->page.u64Hash = csamR3CalcPageHash(pVM, addr);
1698 if (pPageRec->page.pBitmap == NULL)
1700 pPageRec->page.pBitmap = (uint8_t *)MMR3HeapAllocZ(pVM, MM_TAG_CSAM_PATCH, CSAM_PAGE_BITMAP_SIZE);
1701 Assert(pPageRec->page.pBitmap);
1702 if (pPageRec->page.pBitmap == NULL)
1706 memset(pPageRec->page.pBitmap, 0, CSAM_PAGE_BITMAP_SIZE);
1746 PCSAMPAGEREC pPageRec;
1753 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)addr);
1754 if (pPageRec)
1773 PCSAMPAGEREC pPageRec;
1778 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)pInstrGC);
1779 if (pPageRec)
1782 if (u64hash != pPageRec->page.u64Hash)
1923 PCSAMPAGEREC pPageRec = NULL;
1943 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)pPageAddrGC);
1944 if (pPageRec == NULL)
1960 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)pPageAddrGC);
1961 Assert(pPageRec);
1966 Assert(pPageRec->page.fMonitorActive);
1970 if (!pPageRec->page.fMonitorActive)
1992 pPageRec->page.fMonitorActive = true;
1993 pPageRec->page.fMonitorInvalidation = fMonitorInvalidation;
1996 if ( !pPageRec->page.fMonitorInvalidation
1999 Assert(pPageRec->page.fMonitorActive);
2000 PGMHandlerVirtualChangeInvalidateCallback(pVM, pPageRec->page.pPageGC, CSAMCodePageInvalidate);
2001 pPageRec->page.fMonitorInvalidation = true;
2014 if (pPageRec->page.fMonitorActive)
2021 // || (pPageRec->page.GCPhys == 0), ("Shadow page flags for %RRv (%RHp) aren't readonly (%RX64)!!\n", pPageAddrGC, GCPhys, fPageShw));
2025 if (pPageRec->page.GCPhys == 0)
2057 PCSAMPAGEREC pPageRec;
2059 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)pPageAddrGC);
2060 Assert(pPageRec && pPageRec->page.enmTag == enmTag);
2074 PCSAMPAGEREC pPageRec;
2079 pPageRec = (PCSAMPAGEREC)RTAvlPVRemove(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)GCPtr);
2081 if (pPageRec)
2086 if (pPageRec->page.fMonitorActive)
2095 if (pPageRec->page.enmTag == CSAM_TAG_PATM)
2104 switch (pPageRec->page.enmTag)
2120 if (pPageRec->page.pBitmap) MMR3HeapFree(pPageRec->page.pBitmap);
2121 MMR3HeapFree(pPageRec);
2216 PCSAMPAGEREC pPageRec;
2238 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)pInstr);
2239 if (pPageRec)
2241 if (pPage) *pPage= &pPageRec->page;
2242 if (pPageRec->page.pBitmap == NULL || ASMBitTest(pPageRec->page.pBitmap, offset))
2410 PCSAMPAGEREC pPageRec;
2426 pPageRec = (PCSAMPAGEREC)RTAvlPVGet(&pVM->csam.s.pPageTree, (AVLPVKEY)(uintptr_t)GCPtr);
2427 if (pPageRec && pPageRec->page.enmTag == CSAM_TAG_REM)