VirtualBox

忽略:
時間撮記:
2008-10-7 下午01:04:43 (16 年 以前)
作者:
vboxsync
訊息:

#1865: More PGM changes.

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/VMM/VMMAll/PGMAllPhys.cpp

    r13040 r13045  
    12501250                    unsigned iPage;
    12511251                    int rc2 = pgmHandlerVirtualFindByPhysAddr(pVM, GCPhys, &pNode, &iPage);
    1252                     if (VBOX_SUCCESS(rc2) && pNode->pfnHandlerHC)
     1252                    if (VBOX_SUCCESS(rc2) && pNode->pfnHandlerR3)
    12531253                    {
    12541254                        size_t cbRange = pNode->Core.KeyLast - GCPhys + 1;
     
    12621262                        void *pvSrc = PGMRAMRANGE_GETHCPTR(pRam, off)
    12631263
    1264                         /** @note Dangerous assumption that HC handlers don't do anything that really requires an EMT lock! */
    1265                         rc = pNode->pfnHandlerHC(pVM, (RTGCPTR)GCPtr, pvSrc, pvBuf, cb, PGMACCESSTYPE_READ, 0);
     1264                        /* Note: Dangerous assumption that HC handlers don't do anything that really requires an EMT lock! */
     1265                        rc = pNode->pfnHandlerR3(pVM, (RTGCPTR)GCPtr, pvSrc, pvBuf, cb, PGMACCESSTYPE_READ, 0);
    12661266                    }
    12671267#endif /* IN_RING3 */
     
    14911491                            void *pvDst = PGMRAMRANGE_GETHCPTR(pRam, off)
    14921492
    1493                             /** @note Dangerous assumption that HC handlers don't do anything that really requires an EMT lock! */
     1493                            /* Note! Dangerous assumption that R3 handlers don't do anything that really requires an EMT lock! */
    14941494                            rc = pPhysNode->pfnHandlerR3(pVM, GCPhys, pvDst, (void *)pvBuf, cb, PGMACCESSTYPE_WRITE, pPhysNode->pvUserR3);
    14951495                        }
     
    14991499                        unsigned iPage;
    15001500                        int rc2 = pgmHandlerVirtualFindByPhysAddr(pVM, GCPhys, &pVirtNode, &iPage);
    1501                         if (VBOX_SUCCESS(rc2) && pVirtNode->pfnHandlerHC)
     1501                        if (VBOX_SUCCESS(rc2) && pVirtNode->pfnHandlerR3)
    15021502                        {
    15031503                            size_t cbRange = pVirtNode->Core.KeyLast - GCPhys + 1;
     
    15111511                            void *pvDst = PGMRAMRANGE_GETHCPTR(pRam, off)
    15121512
    1513                             /** @note Dangerous assumption that HC handlers don't do anything that really requires an EMT lock! */
    1514                             rc2 = pVirtNode->pfnHandlerHC(pVM, (RTGCPTR)GCPtr, pvDst, (void *)pvBuf, cb, PGMACCESSTYPE_WRITE, 0);
     1513                            /* Note! Dangerous assumption that R3 handlers don't do anything that really requires an EMT lock! */
     1514                            rc2 = pVirtNode->pfnHandlerR3(pVM, (RTGCPTR)GCPtr, pvDst, (void *)pvBuf, cb, PGMACCESSTYPE_WRITE, 0);
    15151515                            if (    (   rc2 != VINF_PGM_HANDLER_DO_DEFAULT
    15161516                                     && rc == VINF_PGM_HANDLER_DO_DEFAULT)
     
    15491549                        unsigned iPage;
    15501550                        int rc2 = pgmHandlerVirtualFindByPhysAddr(pVM, GCPhys, &pNode, &iPage);
    1551                         if (VBOX_SUCCESS(rc2) && pNode->pfnHandlerHC)
     1551                        if (VBOX_SUCCESS(rc2) && pNode->pfnHandlerR3)
    15521552                        {
    15531553                            size_t cbRange = pNode->Core.KeyLast - GCPhys + 1;
     
    15611561                            void *pvDst = PGMRAMRANGE_GETHCPTR(pRam, off)
    15621562
    1563                             /** @tode Dangerous assumption that HC handlers don't do anything that really requires an EMT lock! */
    1564                             rc = pNode->pfnHandlerHC(pVM, (RTGCPTR)GCPtr, pvDst, (void *)pvBuf, cb, PGMACCESSTYPE_WRITE, 0);
     1563                            /* Note! Dangerous assumption that R3 handlers don't do anything that really requires an EMT lock! */
     1564                            rc = pNode->pfnHandlerR3(pVM, (RTGCPTR)GCPtr, pvDst, (void *)pvBuf, cb, PGMACCESSTYPE_WRITE, 0);
    15651565                        }
    15661566#endif /* IN_RING3 */
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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