VirtualBox

Changeset 16941 in vbox


Ignore:
Timestamp:
Feb 19, 2009 10:14:40 AM (16 years ago)
Author:
vboxsync
Message:

Cleaned up + PAE write fix for 2nd PTE

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/PGMInternal.h

    r16922 r16941  
    29692969void            pgmPoolTrackPhysExtDerefGCPhys(PPGMPOOL pPool, PPGMPOOLPAGE pPoolPage, PPGMPAGE pPhysPage);
    29702970#ifdef PGMPOOL_WITH_MONITORING
    2971 # ifdef IN_RING3
    2972 void            pgmPoolMonitorChainChanging(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhysFault, RTHCPTR pvAddress, PDISCPUSTATE pCpu);
    2973 # else
    2974 void            pgmPoolMonitorChainChanging(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhysFault, RTGCPTR pvAddress, PDISCPUSTATE pCpu);
    2975 # endif
     2971void            pgmPoolMonitorChainChanging(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhysFault, CTXTYPE(RTGCPTR, RTHCPTR, RTGCPTR) pvAddress, PDISCPUSTATE pCpu);
    29762972int             pgmPoolMonitorChainFlush(PPGMPOOL pPool, PPGMPOOLPAGE pPage);
    29772973void            pgmPoolMonitorModifiedInsert(PPGMPOOL pPool, PPGMPOOLPAGE pPage);
  • trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp

    r16940 r16941  
    262262 * @param   cbEntry     The entry size.
    263263 */
    264 #ifdef IN_RING3
    265 DECLINLINE(const void *) pgmPoolMonitorGCPtr2CCPtr(PPGMPOOL pPool, RTHCPTR pvFault, RTGCPHYS GCPhysFault, const unsigned cbEntry)
    266 #else
    267 DECLINLINE(const void *) pgmPoolMonitorGCPtr2CCPtr(PPGMPOOL pPool, RTGCPTR pvFault, RTGCPHYS GCPhysFault, const unsigned cbEntry)
    268 #endif
     264DECLINLINE(const void *) pgmPoolMonitorGCPtr2CCPtr(PPGMPOOL pPool, CTXTYPE(RTGCPTR, RTHCPTR, RTGCPTR) pvFault, RTGCPHYS GCPhysFault, const unsigned cbEntry)
    269265{
    270266#ifdef IN_RC
     
    305301 *                      This need not be specified if the caller knows we won't do cross entry accesses.
    306302 */
    307 #ifdef IN_RING3
    308 void pgmPoolMonitorChainChanging(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhysFault, RTHCPTR pvAddress, PDISCPUSTATE pCpu)
    309 #else
    310 void pgmPoolMonitorChainChanging(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhysFault, RTGCPTR pvAddress, PDISCPUSTATE pCpu)
    311 #endif
     303void pgmPoolMonitorChainChanging(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhysFault, CTXTYPE(RTGCPTR, RTHCPTR, RTGCPTR) pvAddress, PDISCPUSTATE pCpu)
    312304{
    313305    Assert(pPage->iMonitoredPrev == NIL_PGMPOOL_IDX);
     
    469461                    {
    470462#  ifdef PGMPOOL_WITH_GCPHYS_TRACKING
    471                         PCX86PTEPAE pGstPte = (PCX86PTEPAE)pgmPoolMonitorGCPtr2CCPtr(pPool, pvAddress, GCPhysFault, sizeof(*pGstPte));
     463                        PCX86PTEPAE pGstPte = (PCX86PTEPAE)pgmPoolMonitorGCPtr2CCPtr(pPool,
     464                                                                                     (CTXTYPE(RTGCPTR, RTHCPTR, RTGCPTR))((RTGCUINTPTR)pvAddress + sizeof(X86PTEPAE)),
     465                                                                                     GCPhysFault + sizeof(X86PTEPAE), sizeof(*pGstPte));
    472466                        Log4(("pgmPoolMonitorChainChanging pae: deref %016RX64 GCPhys %016RX64\n", uShw.pPTPae->a[iShw2].u & X86_PTE_PAE_PG_MASK, pGstPte->u & X86_PTE_PAE_PG_MASK));
    473467                        pgmPoolTracDerefGCPhysHint(pPool, pPage,
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