VirtualBox

Changeset 45525 in vbox for trunk/src/VBox/VMM/VMMR3


Ignore:
Timestamp:
Apr 12, 2013 4:47:57 PM (12 years ago)
Author:
vboxsync
Message:

VBOX_WITH_RAW_MODE changes.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/VM.cpp

    r45499 r45525  
    104104static int                  vmR3InitRing3(PVM pVM, PUVM pUVM);
    105105static int                  vmR3InitRing0(PVM pVM);
    106 static int                  vmR3InitGC(PVM pVM);
     106#ifdef VBOX_WITH_RAW_MODE
     107static int                  vmR3InitRC(PVM pVM);
     108#endif
    107109static int                  vmR3InitDoCompleted(PVM pVM, VMINITCOMPLETED enmWhat);
    108110#ifdef LOG_ENABLED
     
    737739#endif
    738740                                /*
    739                                  * Init the Guest Context components.
     741                                 * Init the Raw-Mode Context components.
    740742                                 */
    741                                 rc = vmR3InitGC(pVM);
     743#ifdef VBOX_WITH_RAW_MODE
     744                                rc = vmR3InitRC(pVM);
    742745                                if (RT_SUCCESS(rc))
     746#endif
    743747                                {
    744748                                    /*
     
    10731077
    10741078
    1075 /**
    1076  * Initializes all GC components of the VM
    1077  */
    1078 static int vmR3InitGC(PVM pVM)
    1079 {
    1080     LogFlow(("vmR3InitGC:\n"));
     1079#ifdef VBOX_WITH_RAW_MODE
     1080/**
     1081 * Initializes all RC components of the VM
     1082 */
     1083static int vmR3InitRC(PVM pVM)
     1084{
     1085    LogFlow(("vmR3InitRC:\n"));
    10811086
    10821087    /*
     
    10931098    }
    10941099    else
    1095         Log(("vmR3InitGC: skipping because of VBOX_SUPLIB_FAKE=fake\n"));
     1100        Log(("vmR3InitRC: skipping because of VBOX_SUPLIB_FAKE=fake\n"));
    10961101
    10971102    /*
     
    11001105    if (RT_SUCCESS(rc))
    11011106        rc = vmR3InitDoCompleted(pVM, VMINITCOMPLETED_GC);
    1102     LogFlow(("vmR3InitGC: returns %Rrc\n", rc));
     1107    LogFlow(("vmR3InitRC: returns %Rrc\n", rc));
    11031108    return rc;
    11041109}
     1110#endif /* VBOX_WITH_RAW_MODE */
    11051111
    11061112
  • trunk/src/VBox/VMM/VMMR3/VMM.cpp

    r45293 r45525  
    536536
    537537
     538#ifdef VBOX_WITH_RAW_MODE
    538539/**
    539540 * Initializes the RC VMM.
     
    611612    return rc;
    612613}
     614#endif /* VBOX_WITH_RAW_MODE */
    613615
    614616
     
    10961098
    10971099
     1100#ifdef VBOX_WITH_RAW_MODE
    10981101/**
    10991102 * Resolve a builtin RC symbol.
     
    11181121    else if (!strcmp(pszSymbol, "g_RelLogger"))
    11191122    {
    1120 #ifdef VBOX_WITH_RC_RELEASE_LOGGING
     1123# ifdef VBOX_WITH_RC_RELEASE_LOGGING
    11211124        if (pVM->vmm.s.pRCRelLoggerR3)
    11221125            pVM->vmm.s.pRCRelLoggerRC = MMHyperR3ToRC(pVM, pVM->vmm.s.pRCRelLoggerR3);
    11231126        *pRCPtrValue = pVM->vmm.s.pRCRelLoggerRC;
    1124 #else
     1127# else
    11251128        *pRCPtrValue = NIL_RTRCPTR;
    1126 #endif
     1129# endif
    11271130    }
    11281131    else
     
    11301133    return VINF_SUCCESS;
    11311134}
     1135#endif /* VBOX_WITH_RAW_MODE */
    11321136
    11331137
     
    12251229
    12261230
     1231#ifdef VBOX_WITH_RAW_MODE
    12271232/**
    12281233 * Executes guest code in the raw-mode context.
     
    12991304    }
    13001305}
     1306#endif /* VBOX_WITH_RAW_MODE */
    13011307
    13021308
     
    18791885}
    18801886
     1887#ifdef VBOX_WITH_RAW_MODE
    18811888
    18821889/**
     
    19781985}
    19791986
     1987#endif /* VBOX_WITH_RAW_MODE */
    19801988
    19811989/**
     
    20282036
    20292037
     2038#ifdef VBOX_WITH_RAW_MODE
    20302039/**
    20312040 * Resumes executing hypervisor code when interrupted by a queue flush or a
     
    20502059        do
    20512060        {
    2052 #ifdef NO_SUPCALLR0VMM
     2061# ifdef NO_SUPCALLR0VMM
    20532062            rc = VERR_GENERAL_FAILURE;
    2054 #else
     2063# else
    20552064            rc = SUPR3CallVMMR0Fast(pVM->pVMR0, VMMR0_DO_RAW_RUN, 0);
    20562065            if (RT_LIKELY(rc == VINF_SUCCESS))
    20572066                rc = pVCpu->vmm.s.iLastGZRc;
    2058 #endif
     2067# endif
    20592068        } while (rc == VINF_EM_RAW_INTERRUPT_HYPER);
    20602069
     
    20622071         * Flush the loggers.
    20632072         */
    2064 #ifdef LOG_ENABLED
     2073# ifdef LOG_ENABLED
    20652074        PRTLOGGERRC pLogger = pVM->vmm.s.pRCLoggerR3;
    20662075        if (    pLogger
    20672076            &&  pLogger->offScratch > 0)
    20682077            RTLogFlushRC(NULL, pLogger);
    2069 #endif
    2070 #ifdef VBOX_WITH_RC_RELEASE_LOGGING
     2078# endif
     2079# ifdef VBOX_WITH_RC_RELEASE_LOGGING
    20712080        PRTLOGGERRC pRelLogger = pVM->vmm.s.pRCRelLoggerR3;
    20722081        if (RT_UNLIKELY(pRelLogger && pRelLogger->offScratch > 0))
    20732082            RTLogFlushRC(RTLogRelDefaultInstance(), pRelLogger);
    2074 #endif
     2083# endif
    20752084        if (rc == VERR_TRPM_PANIC || rc == VERR_TRPM_DONT_PANIC)
    20762085            VMMR3FatalDump(pVM, pVCpu, rc);
     
    20852094    }
    20862095}
     2096#endif /* VBOX_WITH_RAW_MODE */
    20872097
    20882098
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