VirtualBox

Changeset 20404 in vbox


Ignore:
Timestamp:
Jun 8, 2009 1:31:53 PM (16 years ago)
Author:
vboxsync
Message:

Inform REM outside of the pgm lock.

File:
1 edited

Legend:

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

    r20135 r20404  
    18411841        }
    18421842        GMMR3FreePagesCleanup(pReq);
     1843        pgmUnlock(pVM);
    18431844    }
    18441845    else
    18451846    {
     1847        RTGCPHYS cb = pCur->RamRange.cb;
     1848
    18461849        /* link in the ram range */
    18471850        pgmR3PhysLinkRamRange(pVM, &pCur->RamRange, pRamPrev);
    1848         REMR3NotifyPhysRamRegister(pVM, GCPhys, pCur->RamRange.cb, REM_NOTIFY_PHYS_RAM_FLAGS_MMIO2);
    1849     }
    1850     pgmUnlock(pVM);
     1851        pgmUnlock(pVM);
     1852
     1853        REMR3NotifyPhysRamRegister(pVM, GCPhys, cb, REM_NOTIFY_PHYS_RAM_FLAGS_MMIO2);
     1854    }
    18511855
    18521856    return VINF_SUCCESS;
     
    18631867VMMR3DECL(int) PGMR3PhysMMIO2Unmap(PVM pVM, PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS GCPhys)
    18641868{
     1869    bool        fInformREM = false;
     1870    RTGCPHYS    GCPhysRangeREM;
     1871    RTGCPHYS    cbRangeREM;
     1872
    18651873    /*
    18661874     * Validate input
     
    19111919    else
    19121920    {
    1913         REMR3NotifyPhysRamDeregister(pVM, pCur->RamRange.GCPhys, pCur->RamRange.cb);
     1921        GCPhysRangeREM = pCur->RamRange.GCPhys;
     1922        cbRangeREM     = pCur->RamRange.cb;
     1923        fInformREM     = true;
     1924
    19141925        pgmR3PhysUnlinkRamRange(pVM, &pCur->RamRange);
    19151926    }
     
    19211932
    19221933    pgmUnlock(pVM);
     1934
     1935    if (fInformREM)
     1936        REMR3NotifyPhysRamDeregister(pVM, GCPhysRangeREM, cbRangeREM);
    19231937
    19241938    return VINF_SUCCESS;
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