VirtualBox

Changeset 9001 in vbox


Ignore:
Timestamp:
May 21, 2008 9:14:26 AM (17 years ago)
Author:
vboxsync
Message:

Enabled the PGMMODE_PROTECTED (Guest) & PGMMODE_AMD64 (shadow) combination again.

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

Legend:

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

    r8853 r9001  
    17211721#define PGM_BTH_NAME_PAE_32BIT(name)    PGM_CTX(pgm,BthPAE32Bit##name)
    17221722#define PGM_BTH_NAME_PAE_PAE(name)      PGM_CTX(pgm,BthPAEPAE##name)
     1723#define PGM_BTH_NAME_AMD64_PROT(name)   PGM_CTX(pgm,BthAMD64Prot##name)
    17231724#define PGM_BTH_NAME_AMD64_AMD64(name)  PGM_CTX(pgm,BthAMD64AMD64##name)
    17241725#define PGM_BTH_NAME_GC_32BIT_REAL_STR(name)   "pgmGCBth32BitReal" #name
     
    17371738#define PGM_BTH_NAME_R0_PAE_32BIT_STR(name)    "pgmR0BthPAE32Bit" #name
    17381739#define PGM_BTH_NAME_R0_PAE_PAE_STR(name)      "pgmR0BthPAEPAE" #name
     1740#define PGM_BTH_NAME_R0_AMD64_PROT_STR(name)   "pgmR0BthAMD64Prot" #name
    17391741#define PGM_BTH_NAME_R0_AMD64_AMD64_STR(name)  "pgmR0BthAMD64AMD64" #name
    17401742#define PGM_BTH_DECL(type, name)        PGM_CTX_DECL(type) PGM_BTH_NAME(name)
  • trunk/src/VBox/VMM/VMMAll/PGMAll.cpp

    r8965 r9001  
    6969*******************************************************************************/
    7070
    71 #if 1///@todo ndef RT_ARCH_AMD64
    7271/*
    7372 * Shadow - 32-bit mode
     
    117116#undef PGM_SHW_TYPE
    118117#undef PGM_SHW_NAME
    119 #endif /* !RT_ARCH_AMD64 */
    120118
    121119
     
    189187#define PGM_SHW_NAME(name)          PGM_SHW_NAME_AMD64(name)
    190188#include "PGMAllShw.h"
     189
     190/* Guest - protected mode */
     191#define PGM_GST_TYPE                PGM_TYPE_PROT
     192#define PGM_GST_NAME(name)          PGM_GST_NAME_PROT(name)
     193#define PGM_BTH_NAME(name)          PGM_BTH_NAME_AMD64_PROT(name)
     194#define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
     195#include "PGMAllBth.h"
     196#undef BTH_PGMPOOLKIND_PT_FOR_PT
     197#undef PGM_BTH_NAME
     198#undef PGM_GST_TYPE
     199#undef PGM_GST_NAME
    191200
    192201/* Guest - AMD64 mode */
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r8739 r9001  
    4949
    5050#if     (PGM_GST_TYPE == PGM_TYPE_REAL || PGM_GST_TYPE == PGM_TYPE_PROT) \
    51     && !(PGM_SHW_TYPE == PGM_TYPE_32BIT || PGM_SHW_TYPE == PGM_TYPE_PAE)
     51    && !(PGM_SHW_TYPE == PGM_TYPE_32BIT || PGM_SHW_TYPE == PGM_TYPE_PAE || PGM_SHW_TYPE == PGM_TYPE_AMD64)
    5252# error "Invalid combination; real or protected mode without paging implies 32 bits or PAE shadow paging."
    5353#endif
  • trunk/src/VBox/VMM/VMMR0/PGMR0.cpp

    r8965 r9001  
    3333#define PGM_BTH_NAME(name)          PGM_BTH_NAME_32BIT_PROT(name)
    3434#include "PGMR0Bth.h"
     35#undef PGM_BTH_NAME
    3536
    3637#define PGM_BTH_NAME(name)          PGM_BTH_NAME_PAE_PROT(name)
    3738#include "PGMR0Bth.h"
    38 /*
     39#undef PGM_BTH_NAME
     40
    3941#define PGM_BTH_NAME(name)          PGM_BTH_NAME_AMD64_PROT(name)
    4042#include "PGMR0Bth.h"
    41 */
     43#undef PGM_BTH_NAME
     44
    4245__END_DECLS
    4346
     
    123126    /*
    124127     * Call the worker.
     128     *
     129     * We pretend the guest is in protected mode without paging, so we can use existing code to build the
     130     * nested page tables.
    125131     */
    126132    switch(enmShwPagingMode)
     
    132138        rc = PGM_BTH_NAME_PAE_PROT(Trap0eHandler)(pVM, uErr, pRegFrame, pvFault);
    133139        break;
    134         /*
    135140    case PGMMODE_AMD64:
    136141        rc = PGM_BTH_NAME_AMD64_PROT(Trap0eHandler)(pVM, uErr, pRegFrame, pvFault);
    137142        break;
    138         */
    139143    }
    140144    if (rc == VINF_PGM_SYNCPAGE_MODIFIED_PDE)
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