VirtualBox

Changeset 18731 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Apr 6, 2009 8:25:50 AM (16 years ago)
Author:
vboxsync
Message:

Mark shadow pgm pool page as used when syncing one that already exists. (prevent premature flushing)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/PGMAll.cpp

    r18729 r18731  
    958958        pShwPage = pgmPoolGetPage(pPool, pPdpe->u & X86_PDPE_PG_MASK);
    959959        AssertReturn(pShwPage, VERR_INTERNAL_ERROR);
    960 
    961960        Assert((pPdpe->u & X86_PDPE_PG_MASK) == pShwPage->Core.Key);
     961
     962        pgmPoolCacheUsed(pPool, pShwPage);
    962963    }
    963964    *ppPD = (PX86PDPAE)PGMPOOL_PAGE_2_PTR(pVM, pShwPage);
     
    10531054        pShwPage = pgmPoolGetPage(pPool, pPml4e->u & X86_PML4E_PG_MASK);
    10541055        AssertReturn(pShwPage, VERR_INTERNAL_ERROR);
     1056
     1057        pgmPoolCacheUsed(pPool, pShwPage);
    10551058    }
    10561059    /* The PDPT was cached or created; hook it up now. */
     
    10911094        pShwPage = pgmPoolGetPage(pPool, pPdpe->u & X86_PDPE_PG_MASK);
    10921095        AssertReturn(pShwPage, VERR_INTERNAL_ERROR);
     1096
     1097        pgmPoolCacheUsed(pPool, pShwPage);
    10931098    }
    10941099    /* The PD was cached or created; hook it up now. */
     
    11811186        pShwPage = pgmPoolGetPage(pPool, pPml4e->u & EPT_PML4E_PG_MASK);
    11821187        AssertReturn(pShwPage, VERR_INTERNAL_ERROR);
     1188
     1189        pgmPoolCacheUsed(pPool, pShwPage);
    11831190    }
    11841191    /* The PDPT was cached or created; hook it up now and fill with the default value. */
     
    12081215        pShwPage = pgmPoolGetPage(pPool, pPdpe->u & EPT_PDPTE_PG_MASK);
    12091216        AssertReturn(pShwPage, VERR_INTERNAL_ERROR);
     1217
     1218        pgmPoolCacheUsed(pPool, pShwPage);
    12101219    }
    12111220    /* The PD was cached or created; hook it up now and fill with the default value. */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette