VirtualBox

儲存庫 vbox 的更動 16424


忽略:
時間撮記:
2009-1-30 下午03:51:58 (16 年 以前)
作者:
vboxsync
訊息:

VBOX_WITH_PGMPOOL_PAGING_ONLY: fixed PrefetchPage for PAE shadow paging

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r16419 r16424  
    29212921#  elif PGM_GST_TYPE == PGM_TYPE_PAE
    29222922    unsigned        iPDSrc;
     2923#   ifdef VBOX_WITH_PGMPOOL_PAGING_ONLY
     2924    X86PDPE         PdpeSrc;
     2925    PGSTPD          pPDSrc = pgmGstGetPaePDPtr(&pVM->pgm.s, GCPtrPage, &iPDSrc, &PdpeSrc);
     2926#   else
    29232927    PGSTPD          pPDSrc = pgmGstGetPaePDPtr(&pVM->pgm.s, GCPtrPage, &iPDSrc, NULL);
     2928#   endif /* VBOX_WITH_PGMPOOL_PAGING_ONLY */
    29242929    if (!pPDSrc)
    29252930        return VINF_SUCCESS; /* not present */
     
    29502955        const X86PDE    PdeDst = pgmShwGet32BitPDE(&pVM->pgm.s, GCPtrPage);
    29512956# elif PGM_SHW_TYPE == PGM_TYPE_PAE
     2957#  ifdef VBOX_WITH_PGMPOOL_PAGING_ONLY
     2958        const unsigned  iPDDst = ((GCPtrPage >> SHW_PD_SHIFT) & SHW_PD_MASK);
     2959        PX86PDPAE       pPDDst;
     2960        X86PDEPAE       PdeDst;
     2961#   if PGM_GST_TYPE != PGM_TYPE_PAE
     2962        X86PDPE         PdpeSrc;
     2963
     2964        /* Fake PDPT entry; access control handled on the page table level, so allow everything. */
     2965        PdpeSrc.u  = X86_PDPE_P | X86_PDPE_RW | X86_PDPE_US | X86_PDPE_A;
     2966#   endif
     2967        int rc = pgmShwSyncPaePDPtr(pVM, GCPtrPage, &PdpeSrc, &pPDDst);
     2968        if (rc != VINF_SUCCESS)
     2969        {
     2970            AssertRC(rc);
     2971            return rc;
     2972        }
     2973        Assert(pPDDst);
     2974        PdeDst = pPDDst->a[iPDDst];
     2975#  else
    29522976        const X86PDEPAE PdeDst = pgmShwGetPaePDE(&pVM->pgm.s, GCPtrPage);
     2977#  endif /* VBOX_WITH_PGMPOOL_PAGING_ONLY */
     2978
    29532979# elif PGM_SHW_TYPE == PGM_TYPE_AMD64
    29542980        const unsigned  iPDDst = ((GCPtrPage >> SHW_PD_SHIFT) & SHW_PD_MASK);
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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