Changeset 17643 in vbox
- Timestamp:
- Mar 10, 2009 4:37:32 PM (16 years ago)
- svn:sync-xref-src-repo-rev:
- 44129
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllBth.h
r17641 r17643 988 988 # endif /* PGM_SHW_TYPE == PGM_TYPE_AMD64 */ 989 989 990 # if defined(IN_RC) 991 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 992 PGMDynLockHCPage(pVM, (uint8_t *)pPdeDst); 993 # endif 994 990 995 const SHWPDE PdeDst = *pPdeDst; 991 996 if (!PdeDst.n.u1Present) … … 1250 1255 LogFlow(("Skipping flush for big page containing %RGv (PD=%X .u=%RX64)-> nothing has changed!\n", GCPtrPage, iPDSrc, PdeSrc.u)); 1251 1256 STAM_COUNTER_INC(&pVM->pgm.s.CTX_MID_Z(Stat,InvalidatePage4MBPagesSkip)); 1257 # if defined(IN_RC) 1258 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 1259 PGMDynUnlockHCPage(pVM, (uint8_t *)pPdeDst); 1260 # endif 1252 1261 return VINF_SUCCESS; 1253 1262 } … … 1286 1295 } 1287 1296 } 1288 1297 # if defined(IN_RC) 1298 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 1299 PGMDynUnlockHCPage(pVM, (uint8_t *)pPdeDst); 1300 # endif 1289 1301 return rc; 1290 1302 … … 1643 1655 PPGMPOOLPAGE pShwPde = pgmPoolGetPageByHCPhys(pVM, pPdptDst->a[iPdpt].u & X86_PDPE_PG_MASK); 1644 1656 Assert(pShwPde); 1657 # endif 1658 1659 # if defined(IN_RC) 1660 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 1661 PGMDynLockHCPage(pVM, (uint8_t *)pPdeDst); 1645 1662 # endif 1646 1663 … … 1860 1877 LogFlow(("PGM_GCPHYS_2_PTR %RGp (big) failed with %Rrc\n", GCPhys, rc)); 1861 1878 } 1879 # if defined(IN_RC) 1880 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 1881 PGMDynUnlockHCPage(pVM, (uint8_t *)pPdeDst); 1882 # endif 1862 1883 return VINF_SUCCESS; 1863 1884 } … … 1879 1900 1880 1901 pPdeDst->u = 0; 1902 1903 # if defined(IN_RC) 1904 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 1905 PGMDynUnlockHCPage(pVM, (uint8_t *)pPdeDst); 1906 # endif 1881 1907 PGM_INVL_GUEST_TLBS(); 1882 1908 return VINF_PGM_SYNCPAGE_MODIFIED_PDE; … … 3126 3152 pPdeDst = &pPDDst->a[iPDDst]; 3127 3153 # endif 3154 3128 3155 if (!pPdeDst->n.u1Present) 3129 3156 { 3157 # if defined(IN_RC) 3158 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 3159 PGMDynLockHCPage(pVM, (uint8_t *)pPdeDst); 3160 # endif 3130 3161 rc = PGM_BTH_NAME(SyncPT)(pVM, iPDSrc, pPDSrc, GCPtrPage); 3162 # if defined(IN_RC) 3163 /* Make sure the dynamic pPdeDst mapping will not be reused during this function. */ 3164 PGMDynUnlockHCPage(pVM, (uint8_t *)pPdeDst); 3165 # endif 3131 3166 AssertRC(rc); 3132 3167 if (rc != VINF_SUCCESS)
Note:
See TracChangeset
for help on using the changeset viewer.