Changeset 19480 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- May 7, 2009 12:05:40 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllPhys.cpp
r19180 r19480 1420 1420 Log5(("pgmPhysReadHandler: GCPhys=%RGp cb=%#x pPage=%R[pgmpage] phys %s\n", GCPhys, cb, pPage, R3STRING(pPhys->pszDesc) )); 1421 1421 STAM_PROFILE_START(&pPhys->Stat, h); 1422 Assert(PGMIsLockOwner(pVM)); 1423 /* Release the PGM lock as MMIO handlers take the IOM lock. (deadlock prevention) */ 1424 pgmUnlock(pVM); 1422 1425 rc = pPhys->CTX_SUFF(pfnHandler)(pVM, GCPhys, (void *)pvSrc, pvBuf, cb, PGMACCESSTYPE_READ, pPhys->CTX_SUFF(pvUser)); 1426 pgmLock(pVM); 1423 1427 STAM_PROFILE_STOP(&pPhys->Stat, h); 1424 1428 AssertLogRelMsg(rc == VINF_SUCCESS || rc == VINF_PGM_HANDLER_DO_DEFAULT, ("rc=%Rrc GCPhys=%RGp\n", rc, GCPhys)); … … 1646 1650 { 1647 1651 STAM_PROFILE_START(&pCur->Stat, h); 1652 Assert(PGMIsLockOwner(pVM)); 1653 /* Release the PGM lock as MMIO handlers take the IOM lock. (deadlock prevention) */ 1654 pgmUnlock(pVM); 1648 1655 rc = pCur->CTX_SUFF(pfnHandler)(pVM, GCPhys, pvDst, (void *)pvBuf, cbRange, PGMACCESSTYPE_WRITE, pCur->CTX_SUFF(pvUser)); 1656 pgmLock(pVM); 1649 1657 STAM_PROFILE_STOP(&pCur->Stat, h); 1650 1658 if (rc == VINF_PGM_HANDLER_DO_DEFAULT) … … 1845 1853 Log5(("pgmPhysWriteHandler: GCPhys=%RGp cbRange=%#x pPage=%R[pgmpage] phys %s\n", GCPhys, cbRange, pPage, R3STRING(pPhys->pszDesc) )); 1846 1854 STAM_PROFILE_START(&pPhys->Stat, h); 1855 Assert(PGMIsLockOwner(pVM)); 1856 /* Release the PGM lock as MMIO handlers take the IOM lock. (deadlock prevention) */ 1857 pgmUnlock(pVM); 1847 1858 rc = pPhys->CTX_SUFF(pfnHandler)(pVM, GCPhys, pvDst, (void *)pvBuf, cbRange, PGMACCESSTYPE_WRITE, pPhys->CTX_SUFF(pvUser)); 1859 pgmLock(pVM); 1848 1860 STAM_PROFILE_STOP(&pPhys->Stat, h); 1849 1861 AssertLogRelMsg(rc == VINF_SUCCESS || rc == VINF_PGM_HANDLER_DO_DEFAULT, ("rc=%Rrc GCPhys=%RGp pPage=%R[pgmpage] %s\n", rc, GCPhys, pPage, pPhys->pszDesc)); … … 1902 1914 1903 1915 STAM_PROFILE_START(&pPhys->Stat, h); 1916 Assert(PGMIsLockOwner(pVM)); 1917 /* Release the PGM lock as MMIO handlers take the IOM lock. (deadlock prevention) */ 1918 pgmUnlock(pVM); 1904 1919 rc = pPhys->CTX_SUFF(pfnHandler)(pVM, GCPhys, pvDst, (void *)pvBuf, cbRange, PGMACCESSTYPE_WRITE, pPhys->CTX_SUFF(pvUser)); 1920 pgmLock(pVM); 1905 1921 STAM_PROFILE_STOP(&pPhys->Stat, h); 1906 1922 AssertLogRelMsg(rc == VINF_SUCCESS || rc == VINF_PGM_HANDLER_DO_DEFAULT, ("rc=%Rrc GCPhys=%RGp pPage=%R[pgmpage] %s\n", rc, GCPhys, pPage, pPhys->pszDesc));
Note:
See TracChangeset
for help on using the changeset viewer.