VirtualBox

Changeset 56048 in vbox for trunk/src/VBox/VMM/VMMR3


Ignore:
Timestamp:
May 23, 2015 8:28:52 PM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
100570
Message:

pgm.h,++: Changed the return type of PDMPhysRead, PGMPhysWrite, PGMPhysReadGCPtr and PGMPhysWriteGCPtr to VBOXSTRICTRC, tracking down all the currently possible return values for future ring-0 and raw-mode context handlers. Prepared IEM and PGM for new r0+rc pfnHandlers.

Location:
trunk/src/VBox/VMM/VMMR3
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/src/VBox/VMM/VMMR3/PDMDevHlp.cpp

    r55899 r56048  
    715715#endif
    716716
    717     int rc;
     717    VBOXSTRICTRC rcStrict;
    718718    if (VM_IS_EMT(pVM))
    719         rc = PGMPhysRead(pVM, GCPhys, pvBuf, cbRead, PGMACCESSORIGIN_DEVICE);
    720     else
    721         rc = PGMR3PhysReadExternal(pVM, GCPhys, pvBuf, cbRead, PGMACCESSORIGIN_DEVICE);
    722 
    723     Log(("pdmR3DevHlp_PhysRead: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, rc));
    724     return rc;
     719        rcStrict = PGMPhysRead(pVM, GCPhys, pvBuf, cbRead, PGMACCESSORIGIN_DEVICE);
     720    else
     721        rcStrict = PGMR3PhysReadExternal(pVM, GCPhys, pvBuf, cbRead, PGMACCESSORIGIN_DEVICE);
     722    AssertMsg(rcStrict == VINF_SUCCESS, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict))); /** @todo track down the users for this bugger. */
     723
     724    Log(("pdmR3DevHlp_PhysRead: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, VBOXSTRICTRC_VAL(rcStrict) ));
     725    return VBOXSTRICTRC_VAL(rcStrict);
    725726}
    726727
     
    743744#endif
    744745
    745     int rc;
     746    VBOXSTRICTRC rcStrict;
    746747    if (VM_IS_EMT(pVM))
    747         rc = PGMPhysWrite(pVM, GCPhys, pvBuf, cbWrite, PGMACCESSORIGIN_DEVICE);
    748     else
    749         rc = PGMR3PhysWriteExternal(pVM, GCPhys, pvBuf, cbWrite, PGMACCESSORIGIN_DEVICE);
    750 
    751     Log(("pdmR3DevHlp_PhysWrite: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, rc));
    752     return rc;
     748        rcStrict = PGMPhysWrite(pVM, GCPhys, pvBuf, cbWrite, PGMACCESSORIGIN_DEVICE);
     749    else
     750        rcStrict = PGMR3PhysWriteExternal(pVM, GCPhys, pvBuf, cbWrite, PGMACCESSORIGIN_DEVICE);
     751    AssertMsg(rcStrict == VINF_SUCCESS, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict))); /** @todo track down the users for this bugger. */
     752
     753    Log(("pdmR3DevHlp_PhysWrite: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, VBOXSTRICTRC_VAL(rcStrict) ));
     754    return VBOXSTRICTRC_VAL(rcStrict);
    753755}
    754756
  • TabularUnified trunk/src/VBox/VMM/VMMR3/PGMPhys.cpp

    r55909 r56048  
    9090                                                  PGMACCESSORIGIN enmOrigin)
    9191{
    92     PGMPhysRead(pVM, *pGCPhys, pvBuf, cbRead, enmOrigin);
     92    VBOXSTRICTRC rcStrict = PGMPhysRead(pVM, *pGCPhys, pvBuf, cbRead, enmOrigin);
     93    AssertMsg(rcStrict == VINF_SUCCESS, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict))); NOREF(rcStrict);
    9394    return VINF_SUCCESS;
    9495}
     
    221222{
    222223    /** @todo VERR_EM_NO_MEMORY */
    223     PGMPhysWrite(pVM, *pGCPhys, pvBuf, cbWrite, enmOrigin);
     224    VBOXSTRICTRC rcStrict = PGMPhysWrite(pVM, *pGCPhys, pvBuf, cbWrite, enmOrigin);
     225    AssertMsg(rcStrict == VINF_SUCCESS, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict))); NOREF(rcStrict);
    224226    return VINF_SUCCESS;
    225227}
  • TabularUnified trunk/src/VBox/VMM/VMMR3/PGMPhysRWTmpl.h

    r55899 r56048  
    3131    Assert(VM_IS_EMT(pVM));
    3232    PGMPHYS_DATATYPE val;
    33     PGMPhysRead(pVM, GCPhys, &val, sizeof(val), enmOrigin);
     33    VBOXSTRICTRC rcStrict = PGMPhysRead(pVM, GCPhys, &val, sizeof(val), enmOrigin);
     34    AssertMsg(rcStrict == VINF_SUCCESS, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict))); NOREF(rcStrict);
    3435    return val;
    3536}
     
    5051{
    5152    Assert(VM_IS_EMT(pVM));
    52     PGMPhysWrite(pVM, GCPhys, &val, sizeof(val), enmOrigin);
     53    VBOXSTRICTRC rcStrict = PGMPhysWrite(pVM, GCPhys, &val, sizeof(val), enmOrigin);
     54    AssertMsg(rcStrict == VINF_SUCCESS, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict))); NOREF(rcStrict);
    5355}
    5456
Note: See TracChangeset for help on using the changeset viewer.

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