VirtualBox

Changeset 26606 in vbox for trunk/include


Ignore:
Timestamp:
Feb 17, 2010 12:40:42 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
57799
Message:

Large page work

Location:
trunk/include/VBox
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/gmm.h

    r26577 r26606  
    271271GMMR0DECL(int)  GMMR0AllocateHandyPages(PVM pVM, VMCPUID idCpu, uint32_t cPagesToUpdate, uint32_t cPagesToAlloc, PGMMPAGEDESC paPages);
    272272GMMR0DECL(int)  GMMR0AllocatePages(PVM pVM, VMCPUID idCpu, uint32_t cPages, PGMMPAGEDESC paPages, GMMACCOUNT enmAccount);
    273 GMMR0DECL(int)  GMMR0AllocateLargePage(PVM pVM, VMCPUID idCpu, uint32_t cbPage, uint32_t *pidPage, RTHCPHYS *pHCPhys);
     273GMMR0DECL(int)  GMMR0AllocateLargePage(PVM pVM, VMCPUID idCpu, uint32_t cbPage, uint32_t *pIdPage, RTHCPHYS *pHCPhys);
    274274GMMR0DECL(int)  GMMR0FreePages(PVM pVM, VMCPUID idCpu, uint32_t cPages, PGMMFREEPAGEDESC paPages, GMMACCOUNT enmAccount);
    275275GMMR0DECL(int)  GMMR0FreeLargePage(PVM pVM, VMCPUID idCpu, uint32_t idPage);
     
    404404GMMR0DECL(int)  GMMR0MapUnmapChunkReq(PVM pVM, VMCPUID idCpu, PGMMMAPUNMAPCHUNKREQ pReq);
    405405
    406 /**
    407  * Request buffer for GMMR0AllocateLargePageReq / VMMR0_DO_GMM_ALLOC_LARGE_PAGE.
    408  * @see GMMR0AllocateLargePage
    409  */
    410 typedef struct GMMALLOCLARGEPAGEREQ
    411 {
    412     /** The header. */
    413     SUPVMMR0REQHDR  Hdr;
    414     /* Large page size. */
    415     uint32_t        cbPage;
    416     /** The Page ID.
    417      *
    418      * @output  The ID of the page, NIL_GMM_PAGEID if the allocation failed.
    419      */
    420     uint32_t        idPage;
    421     /* Host physical address of the large page. */
    422     RTHCPHYS        HCPhys;
    423 } GMMALLOCLARGEPAGEREQ;
    424 /** Pointer to a GMMR0AllocateLargePageReq / VMMR0_DO_GMM_ALLOC_LARGE_PAGE request buffer. */
    425 typedef GMMALLOCLARGEPAGEREQ *PGMMALLOCLARGEPAGEREQ;
    426 
    427 GMMR0DECL(int) GMMR0AllocateLargePageReq(PVM pVM, VMCPUID idCpu, PGMMALLOCLARGEPAGEREQ pReq);
    428 
    429406
    430407/**
     
    461438GMMR3DECL(void) GMMR3FreePagesCleanup(PGMMFREEPAGESREQ pReq);
    462439GMMR3DECL(void) GMMR3FreeAllocatedPages(PVM pVM, GMMALLOCATEPAGESREQ const *pAllocReq);
    463 GMMR3DECL(int)  GMMR3AllocateLargePage(PVM pVM,  uint32_t cbPage, uint32_t *pidPage, RTHCPHYS *pHCPhys);
     440GMMR3DECL(int)  GMMR3AllocateLargePage(PVM pVM,  uint32_t cbPage);
    464441GMMR3DECL(int)  GMMR3FreeLargePage(PVM pVM,  uint32_t idPage);
    465442GMMR3DECL(int)  GMMR3DeflatedBalloon(PVM pVM, uint32_t cPages);
  • trunk/include/VBox/pgm.h

    r26577 r26606  
    420420 */
    421421VMMR0DECL(int)      PGMR0PhysAllocateHandyPages(PVM pVM, PVMCPU pVCpu);
     422VMMR0DECL(int)      PGMR0PhysAllocateLargeHandyPage(PVM pVM, PVMCPU pVCpu);
    422423VMMR0DECL(int)      PGMR0Trap0eHandlerNestedPaging(PVM pVM, PVMCPU pVCpu, PGMMODE enmShwPagingMode, RTGCUINT uErr, PCPUMCTXCORE pRegFrame, RTGCPHYS pvFault);
    423424# ifdef VBOX_WITH_2X_4GB_ADDR_SPACE
     
    533534VMMR3DECL(void)     PGMR3PhysChunkInvalidateTLB(PVM pVM);
    534535VMMR3DECL(int)      PGMR3PhysAllocateHandyPages(PVM pVM);
    535 VMMR3DECL(int)      PGMR3PhysAllocateLargePage(PVM pVM);
     536VMMR3DECL(int)      PGMR3PhysAllocateLargeHandyPage(PVM pVM);
    536537
    537538VMMR3DECL(void)     PGMR3ReleaseOwnedLocks(PVM pVM);
  • trunk/include/VBox/vmm.h

    r26577 r26606  
    9696    VMMCALLRING3_PGM_ALLOCATE_HANDY_PAGES,
    9797    /** Allocates a large (2MB) page. */
    98     VMMCALLRING3_PGM_ALLOCATE_LARGE_PAGE,
     98    VMMCALLRING3_PGM_ALLOCATE_LARGE_HANDY_PAGE,
    9999    /** Acquire the MM hypervisor heap lock. */
    100100    VMMCALLRING3_MMHYPER_LOCK,
     
    287287    /** Call PGMR0PhysAllocateHandyPages(). */
    288288    VMMR0_DO_PGM_ALLOCATE_HANDY_PAGES,
     289    /** Call PGMR0AllocateLargePage(). */
     290    VMMR0_DO_PGM_ALLOCATE_LARGE_HANDY_PAGE,
    289291
    290292    /** Call GMMR0InitialReservation(). */
     
    294296    /** Call GMMR0AllocatePages(). */
    295297    VMMR0_DO_GMM_ALLOCATE_PAGES,
    296     /** Call GMMR0AllocateLargePage(). */
    297     VMMR0_DO_GMM_ALLOC_LARGE_PAGE,
    298298    /** Call GMMR0FreePages(). */
    299299    VMMR0_DO_GMM_FREE_PAGES,
Note: See TracChangeset for help on using the changeset viewer.

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