VirtualBox

Changeset 14677

Show
Ignore:
Timestamp:
11/27/08 02:18:47 (1 month ago)
Author:
vboxsync
Message:

SyncCR3: Fixed pPDEDst walking with GST=32/SHW=PAE. Fixed assertion.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r14392 r14677  
    18761876    PdeDst = pPDDst->a[iPDDst]; 
    18771877# endif 
    1878     Assert(PdeDst.n.u1Present); 
     1878    AssertMsg(PdeDst.n.u1Present, ("#llx\n", (uint64_t)PdeDst.u)); 
    18791879    PPGMPOOLPAGE    pShwPage = pgmPoolGetPageByHCPhys(pVM, PdeDst.u & SHW_PDE_PG_MASK); 
    18801880    PSHWPT pPTDst = (PSHWPT)PGMPOOL_PAGE_2_PTR(pVM, pShwPage); 
     
    31663166    PGSTPD      pPDSrc = pgmGstGet32bitPDPtr(&pVM->pgm.s); 
    31673167    Assert(pPDSrc); 
    3168 #   ifndef IN_RC 
     3168#   if !defined(IN_RC) && !defined(VBOX_WITH_2X_4GB_ADDR_SPACE_IN_R0) 
    31693169    Assert(PGMPhysGCPhys2HCPtrAssert(pVM, (RTGCPHYS)(cr3 & GST_CR3_PAGE_MASK), sizeof(*pPDSrc)) == pPDSrc); 
    31703170#   endif 
     
    32273227        { 
    32283228#  if PGM_SHW_TYPE == PGM_TYPE_PAE && PGM_GST_TYPE == PGM_TYPE_32BIT 
    3229             if (!(iPD & (X86_PG_PAE_ENTRIES - 1))) /* Start of new PD. */ 
     3229            if ((iPD & 255) == 0) /* Start of new PD. */ 
    32303230                pPDEDst = pgmShwGetPaePDEPtr(&pVM->pgm.s, (uint32_t)iPD << GST_PD_SHIFT); 
    32313231#  endif 

© 2008 Sun Microsystems, Inc.
ContactPrivacy policy