VirtualBox

Changeset 14364 in vbox for trunk


Ignore:
Timestamp:
Nov 19, 2008 5:07:11 PM (16 years ago)
Author:
vboxsync
Message:

Preparations

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

Legend:

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

    r14109 r14364  
    520520VMMR0DECL(PHWACCM_CPUINFO) HWACCMR0GetCurrentCpu();
    521521
     522DECLASM(int) SVMVMRun(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx);
     523DECLASM(int) SVMVMRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx);
     524DECLASM(int) SVMVMSwitcherRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx);
     525
     526
    522527#ifdef VBOX_STRICT
    523528VMMR0DECL(void) HWACCMDumpRegs(PVM pVM, PCPUMCTX pCtx);
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r14154 r14364  
    31363136    return VINF_SUCCESS;
    31373137
    3138 #elif PGM_SHW_TYPE == PGM_TYPE_AMD64
     3138#elif PGM_SHW_TYPE == PGM_TYPE_AMD64 || defined(VBOX_WITH_PGMPOOL_PAGING_ONLY)
    31393139    /*
    31403140     * AMD64 (Shw & Gst) - No need to check all paging levels; we zero
  • trunk/src/VBox/VMM/VMMAll/PGMAllGst.h

    r14154 r14364  
    131131PGM_GST_DECL(int, MapCR3)(PVM pVM, RTGCPHYS GCPhysCR3);
    132132PGM_GST_DECL(int, UnmapCR3)(PVM pVM);
     133#ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY
    133134PGM_GST_DECL(int, MonitorCR3)(PVM pVM, RTGCPHYS GCPhysCR3);
    134135PGM_GST_DECL(int, UnmonitorCR3)(PVM pVM);
     136#endif
    135137PGM_GST_DECL(bool, HandlerVirtualUpdate)(PVM pVM, uint32_t cr4);
    136 #ifndef IN_RING3
     138#ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY
     139# ifndef IN_RING3
    137140PGM_GST_DECL(int, WriteHandlerCR3)(PVM pVM, RTGCUINT uErrorCode, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, RTGCPHYS GCPhysFault, void *pvUser);
    138 # if PGM_GST_TYPE == PGM_TYPE_PAE \
     141#  if PGM_GST_TYPE == PGM_TYPE_PAE \
    139142  || PGM_GST_TYPE == PGM_TYPE_AMD64
    140143PGM_GST_DECL(int, PAEWriteHandlerPD)(PVM pVM, RTGCUINT uErrorCode, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, RTGCPHYS GCPhysFault, void *pvUser);
     144#  endif
    141145# endif
    142146#endif
     
    619623
    620624
     625#ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY
     626
    621627#undef LOG_GROUP
    622628#define LOG_GROUP LOG_GROUP_PGM_POOL
     
    798804#undef LOG_GROUP
    799805#define LOG_GROUP LOG_GROUP_PGM
     806
     807#endif /* VBOX_WITH_PGMPOOL_PAGING_ONLY */
    800808
    801809
     
    10061014}
    10071015
     1016#ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY
    10081017
    10091018#if PGM_GST_TYPE == PGM_TYPE_32BIT && !defined(IN_RING3)
     
    12401249#endif /* PGM_TYPE_PAE && !IN_RING3 */
    12411250
     1251#endif /* !VBOX_WITH_PGMPOOL_PAGING_ONLY */
  • trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp

    r14109 r14364  
    759759    if (pCtx->msrEFER & MSR_K6_EFER_LMA)
    760760    {
    761 #if !defined(VBOX_WITH_64_BITS_GUESTS) || HC_ARCH_BITS != 64
     761#if !defined(VBOX_WITH_64_BITS_GUESTS)
    762762        return VERR_PGM_UNSUPPORTED_SHADOW_PAGING_MODE;
     763#elif HC_ARCH_BITS == 32
     764        pVCpu->hwaccm.s.svm.pfnVMRun = SVMVMSwitcherRun64;
    763765#else
    764766        pVCpu->hwaccm.s.svm.pfnVMRun = SVMVMRun64;
     
    22572259    return VINF_SUCCESS;
    22582260}
     2261
     2262#ifdef HC_ARCH_BITS == 32
     2263/**
     2264 * Prepares for and executes VMRUN (64 bits guests).
     2265 *
     2266 * @returns VBox status code.
     2267 * @param   pVMCBHostPhys   Physical address of host VMCB.
     2268 * @param   pVMCBPhys       Physical address of the VMCB.
     2269 * @param   pCtx            Guest context.
     2270 */
     2271DECLASM(int) SVMVMSwitcherRun64(RTHCPHYS pVMCBHostPhys, RTHCPHYS pVMCBPhys, PCPUMCTX pCtx)
     2272{
     2273    return VERR_NOT_IMPLEMENTED;
     2274}
     2275
     2276#endif /* HC_ARCH_BITS == 32 */
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