VirtualBox

Changeset 9881 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Jun 23, 2008 2:55:44 PM (16 years ago)
Author:
vboxsync
Message:

32 bits iUserTable again (preparing for amd64 changes)

Location:
trunk/src/VBox/VMM
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/PGMInternal.h

    r9752 r9881  
    13111311    uint16_t            iUser;
    13121312    /** Index into the user table. */
    1313     uint16_t            iUserTable;
     1313    uint32_t            iUserTable;
    13141314} PGMPOOLUSER, *PPGMPOOLUSER;
    13151315typedef const PGMPOOLUSER *PCPGMPOOLUSER;
     
    26252625void           *pgmGCPoolMapPage(PVM pVM, PPGMPOOLPAGE pPage);
    26262626#endif
    2627 int             pgmPoolAlloc(PVM pVM, RTGCPHYS GCPhys, PGMPOOLKIND enmKind, uint16_t iUser, uint16_t iUserTable, PPPGMPOOLPAGE ppPage);
     2627int             pgmPoolAlloc(PVM pVM, RTGCPHYS GCPhys, PGMPOOLKIND enmKind, uint16_t iUser, uint32_t iUserTable, PPPGMPOOLPAGE ppPage);
    26282628PPGMPOOLPAGE    pgmPoolGetPageByHCPhys(PVM pVM, RTHCPHYS HCPhys);
    2629 void            pgmPoolFree(PVM pVM, RTHCPHYS HCPhys, uint16_t iUser, uint16_t iUserTable);
    2630 void            pgmPoolFreeByPage(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint16_t iUserTable);
     2629void            pgmPoolFree(PVM pVM, RTHCPHYS HCPhys, uint16_t iUser, uint32_t iUserTable);
     2630void            pgmPoolFreeByPage(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint32_t iUserTable);
    26312631int             pgmPoolFlushPage(PPGMPOOL pPool, PPGMPOOLPAGE pPage);
    26322632void            pgmPoolFlushAll(PVM pVM);
  • trunk/src/VBox/VMM/PGMPool.cpp

    r9778 r9881  
    200200        paUsers[i].iNext = i + 1;
    201201        paUsers[i].iUser = NIL_PGMPOOL_IDX;
    202         paUsers[i].iUserTable = 0xfffe;
     202        paUsers[i].iUserTable = 0xfffffffe;
    203203    }
    204204    paUsers[cMaxUsers - 1].iNext = NIL_PGMPOOL_USER_INDEX;
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r9879 r9881  
    30863086
    30873087        /* Fetch the pgm pool shadow descriptor if the shadow pml4e is present. */
    3088         if (!pVM->pgm.s.CTXMID(p,PaePML4)->a[iPml4e].n.u1Present)
     3088        if (!pPml4eDst->n.u1Present)
    30893089            continue;
    30903090        pShwPdpt = pgmPoolGetPage(pPool, pPml4eDst->u & X86_PML4E_PG_MASK);
  • trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp

    r9877 r9881  
    5555#endif
    5656#ifdef PGMPOOL_WITH_CACHE
    57 static int pgmPoolTrackAddUser(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint16_t iUserTable);
     57static int pgmPoolTrackAddUser(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint32_t iUserTable);
    5858#endif
    5959#ifdef PGMPOOL_WITH_MONITORING
     
    10651065 * @param   ppPage      Where to store the pointer to the page.
    10661066 */
    1067 static int pgmPoolCacheAlloc(PPGMPOOL pPool, RTGCPHYS GCPhys, PGMPOOLKIND enmKind, uint16_t iUser, uint16_t iUserTable, PPPGMPOOLPAGE ppPage)
     1067static int pgmPoolCacheAlloc(PPGMPOOL pPool, RTGCPHYS GCPhys, PGMPOOLKIND enmKind, uint16_t iUser, uint32_t iUserTable, PPPGMPOOLPAGE ppPage)
    10681068{
    10691069#ifndef IN_GC
     
    18371837 * @param   iUserTable  The user table index.
    18381838 */
    1839 DECLINLINE(int) pgmPoolTrackInsert(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhys, uint16_t iUser, uint16_t iUserTable)
     1839DECLINLINE(int) pgmPoolTrackInsert(PPGMPOOL pPool, PPGMPOOLPAGE pPage, RTGCPHYS GCPhys, uint16_t iUser, uint32_t iUserTable)
    18401840{
    18411841    int rc = VINF_SUCCESS;
     
    19271927 * @param   iUserTable  The user table.
    19281928 */
    1929 static int pgmPoolTrackAddUser(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint16_t iUserTable)
     1929static int pgmPoolTrackAddUser(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint32_t iUserTable)
    19301930{
    19311931    PPGMPOOLUSER paUsers = pPool->CTXSUFF(paUsers);
     
    19911991 * @param   iUserTable  The index into the user table (shadowed).
    19921992 */
    1993 static void pgmPoolTrackFreeUser(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint16_t iUserTable)
     1993static void pgmPoolTrackFreeUser(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint32_t iUserTable)
    19941994{
    19951995    /*
     
    32293229        paUsers[i].iNext = i + 1;
    32303230        paUsers[i].iUser = NIL_PGMPOOL_IDX;
    3231         paUsers[i].iUserTable = 0xfffe;
     3231        paUsers[i].iUserTable = 0xfffffffe;
    32323232    }
    32333233    paUsers[cMaxUsers - 1].iNext = NIL_PGMPOOL_USER_INDEX;
     
    34063406 * @param   iUserTable  The index into the user table (shadowed).
    34073407 */
    3408 void pgmPoolFreeByPage(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint16_t iUserTable)
     3408void pgmPoolFreeByPage(PPGMPOOL pPool, PPGMPOOLPAGE pPage, uint16_t iUser, uint32_t iUserTable)
    34093409{
    34103410    STAM_PROFILE_START(&pPool->StatFree, a);
     
    34913491 * @param   ppPage      Where to store the pointer to the page. NULL is stored here on failure.
    34923492 */
    3493 int pgmPoolAlloc(PVM pVM, RTGCPHYS GCPhys, PGMPOOLKIND enmKind, uint16_t iUser, uint16_t iUserTable, PPPGMPOOLPAGE ppPage)
     3493int pgmPoolAlloc(PVM pVM, RTGCPHYS GCPhys, PGMPOOLKIND enmKind, uint16_t iUser, uint32_t iUserTable, PPPGMPOOLPAGE ppPage)
    34943494{
    34953495    PPGMPOOL pPool = pVM->pgm.s.CTXSUFF(pPool);
     
    36113611 * @param   iUserTable  The index into the user table (shadowed).
    36123612 */
    3613 void pgmPoolFree(PVM pVM, RTHCPHYS HCPhys, uint16_t iUser, uint16_t iUserTable)
     3613void pgmPoolFree(PVM pVM, RTHCPHYS HCPhys, uint16_t iUser, uint32_t iUserTable)
    36143614{
    36153615    LogFlow(("pgmPoolFree: HCPhys=%VHp iUser=%#x iUserTable=%#x\n", HCPhys, iUser, iUserTable));
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