VirtualBox

Changeset 23532 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Oct 3, 2009 6:06:32 PM (15 years ago)
Author:
vboxsync
Message:

PGMSavedState: some cleanups

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/PGMSavedState.cpp

    r23524 r23532  
    10971097    {
    10981098        uint32_t const  idRamRangesGen = pVM->pgm.s.idRamRangesGen;
    1099         uint32_t        cSinceYield    = 0;
    11001099        for (pCur = pVM->pgm.s.pRamRangesR3; pCur; pCur = pCur->pNextR3)
    11011100        {
     
    11071106                uint32_t         iPage     = GCPhysCur <= pCur->GCPhys ? 0 : (GCPhysCur - pCur->GCPhys) >> PAGE_SHIFT;
    11081107                GCPhysCur = 0;
    1109                 for (; iPage < cPages; iPage++, cSinceYield++)
     1108                for (; iPage < cPages; iPage++)
    11101109                {
    11111110                    /* Do yield first. */
    11121111                    if (   !fFinalPass
    1113                         && (cSinceYield & 0x7ff) == 0x7ff
    1114                         &&  PDMR3CritSectYield(&pVM->pgm.s.CritSect)
    1115                         &&  pVM->pgm.s.idRamRangesGen != idRamRangesGen)
     1112                        && (iPage & 0x7ff) == 0x100
     1113                        && PDMR3CritSectYield(&pVM->pgm.s.CritSect)
     1114                        && pVM->pgm.s.idRamRangesGen != idRamRangesGen)
    11161115                    {
    11171116                        GCPhysCur = pCur->GCPhys + ((RTGCPHYS)iPage << PAGE_SHIFT);
     
    12761275    {
    12771276        uint32_t const  idRamRangesGen = pVM->pgm.s.idRamRangesGen;
    1278         uint32_t        cSinceYield    = 0;
    12791277        for (pCur = pVM->pgm.s.pRamRangesR3; pCur; pCur = pCur->pNextR3)
    12801278        {
     
    12861284                uint32_t         iPage     = GCPhysCur <= pCur->GCPhys ? 0 : (GCPhysCur - pCur->GCPhys) >> PAGE_SHIFT;
    12871285                GCPhysCur = 0;
    1288                 for (; iPage < cPages; iPage++, cSinceYield++)
     1286                for (; iPage < cPages; iPage++)
    12891287                {
    12901288                    /* Do yield first. */
    1291                     if (    uPass != SSM_PASS_FINAL
    1292                         &&  (cSinceYield & 0x7ff) == 0x7ff
    1293                         &&  PDMR3CritSectYield(&pVM->pgm.s.CritSect)
    1294                         &&  pVM->pgm.s.idRamRangesGen != idRamRangesGen)
     1289                    if (   uPass != SSM_PASS_FINAL
     1290                        && (iPage & 0x7ff) == 0x100
     1291                        && PDMR3CritSectYield(&pVM->pgm.s.CritSect)
     1292                        && pVM->pgm.s.idRamRangesGen != idRamRangesGen)
    12951293                    {
    12961294                        GCPhysCur = pCur->GCPhys + ((RTGCPHYS)iPage << PAGE_SHIFT);
     
    19061904static int pgmR3LoadPageBitsOld(PVM pVM, PSSMHANDLE pSSM, uint8_t uType, PPGMPAGE pPage, RTGCPHYS GCPhys, PPGMRAMRANGE pRam)
    19071905{
    1908     int rc;
    1909 
    19101906    /*
    19111907     * Match up the type, dealing with MMIO2 aliases (dropped).
     
    19201916     */
    19211917    void *pvPage;
    1922     rc = pgmPhysGCPhys2CCPtrInternal(pVM, pPage, GCPhys, &pvPage);
     1918    int rc = pgmPhysGCPhys2CCPtrInternal(pVM, pPage, GCPhys, &pvPage);
    19231919    if (RT_SUCCESS(rc))
    19241920        rc = SSMR3GetMem(pSSM, pvPage, PAGE_SIZE);
     
    19411937static int pgmR3LoadPageOld(PVM pVM, PSSMHANDLE pSSM, uint8_t uType, PPGMPAGE pPage, RTGCPHYS GCPhys, PPGMRAMRANGE pRam)
    19421938{
    1943     uint8_t         uState;
     1939    uint8_t uState;
    19441940    int rc = SSMR3GetU8(pSSM, &uState);
    19451941    AssertLogRelMsgRCReturn(rc, ("pPage=%R[pgmpage] GCPhys=%#x %s rc=%Rrc\n", pPage, GCPhys, pRam->pszDesc, rc), rc);
     
    19761972    AssertLogRelMsgReturn(pRomPage, ("GCPhys=%RGp %s\n", GCPhys, pRam->pszDesc), VERR_INTERNAL_ERROR);
    19771973
    1978     uint8_t     uProt;
     1974    uint8_t uProt;
    19791975    int rc = SSMR3GetU8(pSSM, &uProt);
    19801976    AssertLogRelMsgRCReturn(rc, ("pPage=%R[pgmpage] GCPhys=%#x %s\n", pPage, GCPhys, pRam->pszDesc), rc);
     
    22582254 * @param   pSSM                The SSM handle.
    22592255 * @param   uVersion            The saved state version.
     2256 *
     2257 * @todo    This needs splitting up if more record types or code twists are
     2258 *          added...
    22602259 */
    22612260static int pgmR3LoadMemory(PVM pVM, PSSMHANDLE pSSM, uint32_t uPass)
     
    22642263     * Process page records until we hit the terminator.
    22652264     */
    2266     RTGCPHYS        GCPhys     = NIL_RTGCPHYS;
    2267     PPGMRAMRANGE    pRamHint   = NULL;
    2268     uint8_t         id         = UINT8_MAX;
    2269     uint32_t        iPage      = UINT32_MAX - 10;
    2270     PPGMROMRANGE    pRom       = NULL;
    2271     PPGMMMIO2RANGE  pMmio2     = NULL;
     2265    RTGCPHYS        GCPhys   = NIL_RTGCPHYS;
     2266    PPGMRAMRANGE    pRamHint = NULL;
     2267    uint8_t         id       = UINT8_MAX;
     2268    uint32_t        iPage    = UINT32_MAX - 10;
     2269    PPGMROMRANGE    pRom     = NULL;
     2270    PPGMMMIO2RANGE  pMmio2   = NULL;
    22722271    for (;;)
    22732272    {
     
    23402339                }
    23412340                id = UINT8_MAX;
    2342                 iPage = UINT32_MAX - 10;
    23432341                break;
    23442342            }
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