Changeset 100958 in vbox
- Timestamp:
- Aug 23, 2023 2:11:16 PM (14 months ago)
- File:
-
- 1 edited
-
trunk/src/VBox/VMM/VMMAll/PGMAllBth.h (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllBth.h
r100243 r100958 779 779 { 780 780 Log(("PGM #PF: Make writable: %RGp %R[pgmpage] pvFault=%RGp uErr=%#x\n", GCPhys, pPage, pvFault, uErr)); 781 # ifndef VBOX_WITH_NEW_LAZY_PAGE_ALLOC 781 782 Assert(!PGM_PAGE_IS_ZERO(pPage)); 783 # endif 782 784 AssertFatalMsg(!PGM_PAGE_IS_BALLOONED(pPage), ("Unexpected ballooned page at %RGp\n", GCPhys)); 783 785 STAM_STATS({ pVCpu->pgmr0.s.pStatTrap0eAttributionR0 = &pVCpu->pgm.s.Stats.StatRZTrap0eTime2MakeWritable; }); … … 1975 1977 * Make sure only allocated pages are mapped writable. 1976 1978 */ 1977 if ( SHW_PTE_IS_P_RW(PteDst)1978 && PGM_PAGE_GET_STATE(pPage) != PGM_PAGE_STATE_ALLOCATED)1979 if ( SHW_PTE_IS_P_RW(PteDst) 1980 && PGM_PAGE_GET_STATE(pPage) != PGM_PAGE_STATE_ALLOCATED) 1979 1981 { 1982 # ifndef VBOX_WITH_NEW_LAZY_PAGE_ALLOC 1980 1983 /* Still applies to shared pages. */ 1981 1984 Assert(!PGM_PAGE_IS_ZERO(pPage)); 1985 # endif 1982 1986 SHW_PTE_SET_RO(PteDst); /** @todo this isn't quite working yet. Why, isn't it? */ 1983 1987 Log3(("SyncPageWorker: write-protecting %RGp pPage=%R[pgmpage]at iPTDst=%d\n", GCPhysPage, pPage, iPTDst)); … … 2318 2322 && PGM_PAGE_GET_STATE(pPage) != PGM_PAGE_STATE_ALLOCATED) 2319 2323 { 2324 # ifndef VBOX_WITH_NEW_LAZY_PAGE_ALLOC 2320 2325 /* Still applies to shared pages. */ 2321 2326 Assert(!PGM_PAGE_IS_ZERO(pPage)); 2327 # endif 2322 2328 SHW_PTE_SET_RO(PteDst); /** @todo this isn't quite working yet... */ 2323 2329 Log3(("SyncPage: write-protecting %RGp pPage=%R[pgmpage] at %RGv\n", GCPhys, pPage, GCPtrPage)); … … 2610 2616 Pte.u = PGM_PAGE_GET_HCPHYS(pPage) | fGstShwPteFlags; 2611 2617 Log7Func(("regular page (%R[pgmpage]) at %RGp -> %RX64\n", pPage, GCPhysPage, Pte.u)); 2618 2619 /* Make sure only allocated pages are mapped writable. */ 2620 if ( (fGstShwPteFlags & EPT_E_WRITE) 2621 && PGM_PAGE_GET_STATE(pPage) != PGM_PAGE_STATE_ALLOCATED) 2622 { 2623 Pte.u &= ~EPT_E_WRITE; 2624 Log7Func(("write-protecting page (%R[pgmpage]) at %RGp -> %RX64\n", pPage, GCPhysPage, Pte.u)); 2625 } 2612 2626 } 2613 2627 else if (!PGM_PAGE_HAS_ACTIVE_ALL_HANDLERS(pPage)) … … 3665 3679 && PGM_PAGE_GET_STATE(pPage) != PGM_PAGE_STATE_ALLOCATED) 3666 3680 { 3681 # ifndef VBOX_WITH_NEW_LAZY_PAGE_ALLOC 3667 3682 /* Still applies to shared pages. */ 3668 3683 Assert(!PGM_PAGE_IS_ZERO(pPage)); 3684 # endif 3669 3685 SHW_PTE_SET_RO(PteDst); /** @todo this isn't quite working yet... */ 3670 3686 Log3(("SyncPT: write-protecting %RGp pPage=%R[pgmpage] at %RGv\n", GCPhys, pPage, (RTGCPTR)(GCPtr | (iPTDst << SHW_PT_SHIFT))));
Note:
See TracChangeset
for help on using the changeset viewer.

