VirtualBox

Changeset 11164 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Aug 6, 2008 12:15:58 AM (17 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
34155
Message:

#1865: VGA. Changed PDMDevHlpMMHyperMapMMIO2/MMHyperMapMMIO2 to return a RC pointer instead of a GC one.

Location:
trunk/src/VBox/VMM
Files:
2 edited

Legend:

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

    r9303 r11164  
    425425 * @param   cb          The number of bytes to map. Will be rounded up to the closest page boundrary.
    426426 * @param   pszDesc     Mapping description.
    427  * @param   pGCPtr      Where to store the GC address.
     427 * @param   pRCPtr      Where to store the RC address.
    428428 */
    429429MMR3DECL(int) MMR3HyperMapMMIO2(PVM pVM, PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb,
    430                                 const char *pszDesc, PRTGCPTR pGCPtr)
    431 {
    432     LogFlow(("MMR3HyperMapMMIO2: pDevIns=%p iRegion=%#x off=%VGp cb=%VGp pszDesc=%p:{%s} pGCPtr=%p\n",
    433              pDevIns, iRegion, off, cb, pszDesc, pszDesc, pGCPtr));
     430                                const char *pszDesc, PRTRCPTR pRCPtr)
     431{
     432    LogFlow(("MMR3HyperMapMMIO2: pDevIns=%p iRegion=%#x off=%VGp cb=%VGp pszDesc=%p:{%s} pRCPtr=%p\n",
     433             pDevIns, iRegion, off, cb, pszDesc, pszDesc, pRCPtr));
    434434    int rc;
    435435
     
    484484        }
    485485
    486         if (VBOX_SUCCESS(rc) && pGCPtr)
    487             *pGCPtr = GCPtr | offPage;
     486        if (VBOX_SUCCESS(rc))
     487        {
     488            GCPtr |= offPage;
     489            *pRCPtr = GCPtr;
     490            AssertLogRelReturn(*pRCPtr == GCPtr, VERR_INTERNAL_ERROR);
     491        }
    488492    }
    489493    return rc;
  • trunk/src/VBox/VMM/PDMDevice.cpp

    r10841 r11164  
    172172static DECLCALLBACK(int) pdmR3DevHlp_MMIO2Map(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS GCPhys);
    173173static DECLCALLBACK(int) pdmR3DevHlp_MMIO2Unmap(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS GCPhys);
    174 static DECLCALLBACK(int) pdmR3DevHlp_MMHyperMapMMIO2(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb, const char *pszDesc, PRTGCPTR pGCPtr);
     174static DECLCALLBACK(int) pdmR3DevHlp_MMHyperMapMMIO2(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb, const char *pszDesc, PRTRCPTR pRCPtr);
    175175
    176176static DECLCALLBACK(PVM) pdmR3DevHlp_Untrusted_GetVM(PPDMDEVINS pDevIns);
     
    211211static DECLCALLBACK(int) pdmR3DevHlp_Untrusted_MMIO2Map(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS GCPhys);
    212212static DECLCALLBACK(int) pdmR3DevHlp_Untrusted_MMIO2Unmap(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS GCPhys);
    213 static DECLCALLBACK(int) pdmR3DevHlp_Untrusted_MMHyperMapMMIO2(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb, const char *pszDesc, PRTGCPTR pGCPtr);
     213static DECLCALLBACK(int) pdmR3DevHlp_Untrusted_MMHyperMapMMIO2(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb, const char *pszDesc, PRTRCPTR pRCPtr);
    214214/** @} */
    215215
     
    36253625 */
    36263626static DECLCALLBACK(int) pdmR3DevHlp_MMHyperMapMMIO2(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb,
    3627                                                      const char *pszDesc, PRTGCPTR pGCPtr)
     3627                                                     const char *pszDesc, PRTRCPTR pRCPtr)
    36283628{
    36293629    PDMDEV_ASSERT_DEVINS(pDevIns);
    36303630    VM_ASSERT_EMT(pDevIns->Internal.s.pVMHC);
    3631     LogFlow(("pdmR3DevHlp_MMHyperMapMMIO2: caller='%s'/%d: iRegion=#x off=%RGp cb=%RGp pszDesc=%p:{%s} pGCPtr=%p\n",
    3632              pDevIns->pDevReg->szDeviceName, pDevIns->iInstance, iRegion, off, cb, pszDesc, pszDesc, pGCPtr));
    3633 
    3634     int rc = MMR3HyperMapMMIO2(pDevIns->Internal.s.pVMHC, pDevIns, iRegion, off, cb, pszDesc, pGCPtr);
    3635 
    3636     LogFlow(("pdmR3DevHlp_MMHyperMapMMIO2: caller='%s'/%d: returns %Rrc\n", pDevIns->pDevReg->szDeviceName, pDevIns->iInstance, rc));
     3631    LogFlow(("pdmR3DevHlp_MMHyperMapMMIO2: caller='%s'/%d: iRegion=#x off=%RGp cb=%RGp pszDesc=%p:{%s} pRCPtr=%p\n",
     3632             pDevIns->pDevReg->szDeviceName, pDevIns->iInstance, iRegion, off, cb, pszDesc, pszDesc, pRCPtr));
     3633
     3634    int rc = MMR3HyperMapMMIO2(pDevIns->Internal.s.pVMHC, pDevIns, iRegion, off, cb, pszDesc, pRCPtr);
     3635
     3636    LogFlow(("pdmR3DevHlp_MMHyperMapMMIO2: caller='%s'/%d: returns %Rrc *pRCPtr=%RRv\n", pDevIns->pDevReg->szDeviceName, pDevIns->iInstance, rc, *pRCPtr));
    36373637    return rc;
    36383638}
     
    39883988
    39893989/** @copydoc PDMDEVHLP::pfnMMHyperMapMMIO2 */
    3990 static DECLCALLBACK(int) pdmR3DevHlp_Untrusted_MMHyperMapMMIO2(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb, const char *pszDesc, PRTGCPTR pGCPtr)
     3990static DECLCALLBACK(int) pdmR3DevHlp_Untrusted_MMHyperMapMMIO2(PPDMDEVINS pDevIns, uint32_t iRegion, RTGCPHYS off, RTGCPHYS cb, const char *pszDesc, PRTRCPTR pRCPtr)
    39913991{
    39923992    PDMDEV_ASSERT_DEVINS(pDevIns);
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