VirtualBox

Ignore:
Timestamp:
Jun 11, 2008 8:43:25 AM (17 years ago)
Author:
vboxsync
Message:

AMD64 paging updates

File:
1 edited

Legend:

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

    r9570 r9589  
    26032603        const unsigned  iPDDst = ((GCPtrPage >> SHW_PD_SHIFT) & SHW_PD_MASK);
    26042604        PX86PDPAE       pPDDst;
    2605         PX86PDPT        pPdptDst;
    26062605        X86PDEPAE       PdeDst;
    26072606
    2608         int rc = PGMShwGetLongModePDPtr(pVM, GCPtrPage, &pPdptDst, &pPDDst);
     2607        int rc = PGMShwGetAllocLongModePDPtr(pVM, GCPtrPage, &pPDDst);
    26092608        if (rc != VINF_SUCCESS)
    26102609        {
    2611             AssertMsg(rc == VERR_PAGE_TABLE_NOT_PRESENT, ("Unexpected rc=%Vrc\n", rc));
     2610            AssertMsg(rc == VINF_PGM_SYNC_CR3, ("Unexpected rc=%Vrc\n", rc));
    26122611            return rc;
    26132612        }
     
    29442943            if (rc != VINF_SUCCESS)
    29452944            {
    2946                 AssertMsg(rc == VERR_PAGE_TABLE_NOT_PRESENT, ("Unexpected rc=%Vrc\n", rc));
    2947                 return rc;
     2945                if (rc == VERR_PAGE_MAP_LEVEL4_NOT_PRESENT)
     2946                    break; /* next PML4E */
     2947
     2948                AssertMsg(rc == VERR_PAGE_DIRECTORY_PTR_NOT_PRESENT, ("Unexpected rc=%Vrc\n", rc));
     2949                continue;   /* next PDPTE */
    29482950            }
    29492951            Assert(pPDDst);
     
    29652967                            if (rc != VINF_SUCCESS)
    29662968                            {
    2967                                 AssertMsg(rc == VERR_PAGE_TABLE_NOT_PRESENT, ("Unexpected rc=%Vrc\n", rc));
    2968                                 return rc;
     2969                                AssertMsg(rc == VERR_PAGE_DIRECTORY_PTR_NOT_PRESENT, ("Unexpected rc=%Vrc\n", rc));
     2970                                continue;
    29692971                            }
    29702972
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