VirtualBox

Changeset 73249 in vbox for trunk/src/VBox/VMM/VMMR3/PGM.cpp


Ignore:
Timestamp:
Jul 19, 2018 5:29:09 PM (6 years ago)
Author:
vboxsync
Message:

PGM: Working on eliminating PGMMODEDATA and the corresponding PGMCPU section so we can do mode switching in ring-0. This third part starts dealing with shadow+guest paging pointers. bugref:9044

File:
1 edited

Legend:

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

    r73247 r73249  
    35153515    NOREF(idxShw);
    35163516
    3517     pVCpu->pgm.s.idxBothModeData   = pgmModeDataIndexByMode(enmShw, enmGst);
     3517    uintptr_t idxBth = pVCpu->pgm.s.idxBothModeData = (idxShw - PGM_TYPE_FIRST_SHADOW) * PGM_TYPE_END + idxGst;
     3518    Assert(g_aPgmBothModeData[idxBth].uShwType == idxShw);
     3519    Assert(g_aPgmBothModeData[idxBth].uGstType == idxGst);
     3520    AssertPtr(g_aPgmBothModeData[idxBth].pfnInvalidatePage);
     3521    AssertPtr(g_aPgmBothModeData[idxBth].pfnSyncCR3);
     3522    AssertPtr(g_aPgmBothModeData[idxBth].pfnPrefetchPage);
     3523    AssertPtr(g_aPgmBothModeData[idxBth].pfnVerifyAccessSyncPage);
     3524    AssertPtr(g_aPgmBothModeData[idxBth].pfnMapCR3);
     3525    AssertPtr(g_aPgmBothModeData[idxBth].pfnUnmapCR3);
     3526    AssertPtr(g_aPgmBothModeData[idxBth].pfnEnter);
     3527    AssertPtr(g_aPgmBothModeData[idxBth].pfnRelocate);
     3528#ifdef VBOX_STRICT
     3529    AssertPtr(g_aPgmBothModeData[idxBth].pfnAssertCR3);
     3530#endif
     3531    NOREF(idxBth);
    35183532
    35193533    /*
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