VirtualBox

Changeset 29308 in vbox


Ignore:
Timestamp:
May 10, 2010 3:23:09 PM (15 years ago)
Author:
vboxsync
Message:

Shared paging updates

Location:
trunk
Files:
4 edited

Legend:

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

    r29307 r29308  
    294294GMMR0DECL(int)  GMMR0MapUnmapChunk(PVM pVM, VMCPUID idCpu, uint32_t idChunkMap, uint32_t idChunkUnmap, PRTR3PTR ppvR3);
    295295GMMR0DECL(int)  GMMR0SeedChunk(PVM pVM, VMCPUID idCpu, RTR3PTR pvR3);
    296 GMMR0DECL(int)  GMMR0RegisterSharedModule(PVM pVM, VMCPUID idCpu, char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule, unsigned cRegions, VMMDEVSHAREDREGIONDESC *pRegions);
     296GMMR0DECL(int)  GMMR0RegisterSharedModule(PVM pVM, VMCPUID idCpu, VBOXOSFAMILY enmGuestOS, char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule, unsigned cRegions, VMMDEVSHAREDREGIONDESC *pRegions);
    297297GMMR0DECL(int)  GMMR0UnregisterSharedModule(PVM pVM, VMCPUID idCpu, char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule);
    298298GMMR0DECL(int)  GMMR0UnregisterAllSharedModules(PVM pVM, VMCPUID idCpu);
  • trunk/src/VBox/VMM/PGMSharedPage.cpp

    r29203 r29308  
    125125 * @returns VBox status code.
    126126 * @param   pVM                 VM handle
     127 * @param   enmGuestOS          Guest OS type
    127128 * @param   pszModuleName       Module name
    128129 * @param   pszVersion          Module version
     
    132133 * @param   pRegions            Shared region(s)
    133134 */
    134 VMMR3DECL(int) PGMR3SharedModuleRegister(PVM pVM, char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule,
     135VMMR3DECL(int) PGMR3SharedModuleRegister(PVM pVM, VBOXOSFAMILY enmGuestOS, char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule,
    135136                                         unsigned cRegions, VMMDEVSHAREDREGIONDESC *pRegions)
    136137{
     
    144145    AssertReturn(pReq, VERR_NO_MEMORY);
    145146
     147    pReq->enmGuestOS    = enmGuestOS;
    146148    pReq->GCBaseAddr    = GCBaseAddr;
    147149    pReq->cbModule      = cbModule;
  • trunk/src/VBox/VMM/VMMR0/GMMR0.cpp

    r29250 r29308  
    34513451 * @param   pVM                 VM handle
    34523452 * @param   idCpu               VCPU id
     3453 * @param   enmGuestOS          Guest OS type
    34533454 * @param   pszModuleName       Module name
    34543455 * @param   pszVersion          Module version
     
    34583459 * @param   pRegions            Shared region(s)
    34593460 */
    3460 GMMR0DECL(int) GMMR0RegisterSharedModule(PVM pVM, VMCPUID idCpu, char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule,
     3461GMMR0DECL(int) GMMR0RegisterSharedModule(PVM pVM, VMCPUID idCpu, VBOXOSFAMILY enmGuestOS, char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule,
    34613462                                         unsigned cRegions, VMMDEVSHAREDREGIONDESC *pRegions)
    34623463{
     
    35243525            strcpy(pGlobalModule->szVersion, pszVersion);
    35253526
    3526             pGlobalModule->cRegions = cRegions;
     3527            pGlobalModule->enmGuestOS = enmGuestOS;
     3528            pGlobalModule->cRegions   = cRegions;
    35273529
    35283530            for (unsigned i = 0; i < cRegions; i++)
     
    35973599    AssertMsgReturn(pReq->Hdr.cbReq >= sizeof(*pReq) && pReq->Hdr.cbReq == RT_UOFFSETOF(GMMREGISTERSHAREDMODULEREQ, aRegions[pReq->cRegions]), ("%#x != %#x\n", pReq->Hdr.cbReq, sizeof(*pReq)), VERR_INVALID_PARAMETER);
    35983600
    3599     return GMMR0RegisterSharedModule(pVM, idCpu, pReq->szName, pReq->szVersion, pReq->GCBaseAddr, pReq->cbModule, pReq->cRegions, pReq->aRegions);
     3601    return GMMR0RegisterSharedModule(pVM, idCpu, pReq->enmGuestOS, pReq->szName, pReq->szVersion, pReq->GCBaseAddr, pReq->cbModule, pReq->cRegions, pReq->aRegions);
    36003602}
    36013603
  • trunk/src/VBox/VMM/VMMR0/GMMR0Internal.h

    r29201 r29308  
    6969    /** Number of users (VMs). */
    7070    uint32_t                    cUsers;
    71     /** Align. */
    72     uint32_t                    u32Align;
     71    /** Guest OS family type. */
     72    VBOXOSFAMILY                enmGuestOS;
    7373    /** Module name */
    7474    char                        szName[GMM_SHARED_MODULE_MAX_NAME_STRING];
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