VirtualBox

Changeset 14174 in vbox


Ignore:
Timestamp:
Nov 13, 2008 1:23:56 PM (16 years ago)
Author:
vboxsync
Message:

VMM: another shot at it.

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

Legend:

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

    r14154 r14174  
    12361236 */
    12371237#define PGM_PAGER3MAPTLB_IDX(GCPhys)    ( ((GCPhys) >> PAGE_SHIFT) & (PGM_PAGER3MAPTLB_ENTRIES - 1) )
     1238
     1239
     1240/**
     1241 * Mapping cache usage set entry.
     1242 */
     1243typedef struct PGMMAPSETENTRY
     1244{
     1245    /** The mapping cache index. */
     1246    uint16_t                    iMap;
     1247    /** The number of references. */
     1248    uint16_t                    cRef;
     1249} PGMMAPSETENTRY;
     1250/** Pointer to a mapping cache usage set entry. */
     1251typedef PGMMAPSETENTRY *PPGMMAPSETENTRY;
     1252
     1253/**
     1254 * .
     1255 */
     1256typedef struct PGMMAPSET
     1257{
     1258
     1259};
    12381260
    12391261
  • trunk/src/VBox/VMM/VMMInternal.h

    r14172 r14174  
    184184    /** Pointer to core code guest context mapping. */
    185185    RTRCPTR                     pvCoreCodeRC;
     186    RTRCPTR                     pRCPadding0; /**< Alignment padding */
    186187#ifdef VBOX_WITH_NMI
    187188    /** The guest context address of the APIC (host) mapping. */
    188189    RTRCPTR                     GCPtrApicBase;
    189     RTRCPTR                     pGCPadding0; /**< Alignment padding */
     190    RTRCPTR                     pRCPadding1; /**< Alignment padding */
    190191#endif
    191192    /** The current switcher.
    192193     * This will be set before the VMM is fully initialized. */
    193194    VMMSWITCHER                 enmSwitcher;
     195    /** Flag to disable the switcher permanently (VMX) (boolean) */
     196    bool                        fSwitcherDisabled;
    194197    /** Array of offsets to the different switchers within the core code. */
    195198    RTUINT                      aoffSwitchers[VMMSWITCHER_MAX];
    196     /** Flag to disable the switcher permanently (VMX) (boolean) */
    197     bool                        fSwitcherDisabled;
    198 //#if HC_ARCH_BITS == 64
    199     uint32_t                    u32PaddingMinus1; /**< Alignment padding. */
    200 //#endif
    201199
    202200    /** Host to guest switcher entry point. */
     
    213211    /** The last RC/R0 return code. */
    214212    RTINT                       iLastGZRc;
    215 #if HC_ARCH_BITS == 64
    216     uint32_t                    u32Padding0; /**< Alignment padding. */
    217 #endif
    218213    /** @}  */
    219214
     
    226221    /** Pointer to the bottom of the stack - needed for doing relocations. */
    227222    RCPTRTYPE(uint8_t *)        pbEMTStackBottomRC;
     223#if HC_ARCH_BITS == 32
     224    uint32_t                    u32Padding0; /**< Alignment padding. */
     225#endif
    228226
    229227    /** @name Logging
     
    238236     * This is NULL if logging is disabled. */
    239237    R3PTRTYPE(PRTLOGGERRC)      pRCLoggerR3;
    240 #ifdef VBOX_WITH_RC_RELEASE_LOGGING
    241     /** Size of the allocated release logger instance (pRCRelLoggerRC/pRCRelLoggerR3).
    242      * This may differ from cbRCLogger. */
    243     uint32_t                    cbRCRelLogger;
    244     /** Pointer to the GC release logger instance - RC Ptr. */
    245     RCPTRTYPE(PRTLOGGERRC)      pRCRelLoggerRC;
    246     /** Pointer to the GC release logger instance - R3 Ptr. */
    247     R3PTRTYPE(PRTLOGGERRC)      pRCRelLoggerR3;
    248 #endif /* VBOX_WITH_RC_RELEASE_LOGGING */
    249238    /** Pointer to the R0 logger instance - R3 Ptr.
    250239     * This is NULL if logging is disabled. */
     
    253242     * This is NULL if logging is disabled. */
    254243    R0PTRTYPE(PVMMR0LOGGER)     pR0LoggerR0;
    255 #if HC_ARCH_BITS == 32
    256     uint32_t                    u32Padding1; /**< Alignment padding. */
    257 #endif
     244#ifdef VBOX_WITH_RC_RELEASE_LOGGING
     245    /** Pointer to the GC release logger instance - R3 Ptr. */
     246    R3PTRTYPE(PRTLOGGERRC)      pRCRelLoggerR3;
     247    /** Pointer to the GC release logger instance - RC Ptr. */
     248    RCPTRTYPE(PRTLOGGERRC)      pRCRelLoggerRC;
     249    /** Size of the allocated release logger instance (pRCRelLoggerRC/pRCRelLoggerR3).
     250     * This may differ from cbRCLogger. */
     251    uint32_t                    cbRCRelLogger;
     252#else  /* !VBOX_WITH_RC_RELEASE_LOGGING */
     253    RTR3PTR                     pR3Padding0; /**< Alignment padding. */
     254#endif /* !VBOX_WITH_RC_RELEASE_LOGGING */
    258255    /** @} */
    259256
     
    270267    uint32_t                    cYieldEveryMillies;
    271268#if HC_ARCH_BITS == 32
    272     uint32_t                    u32Padding0; /**< Alignment padding. */
     269    RTR3PTR                     pR3Padding1; /**< Alignment padding. */
    273270#endif
    274271    /** The timestamp of the previous yield. (nano) */
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