third_party/virtualbox/src/VBox/VMM/VMMR3/VM.cpp
/**
 * Initializes all R0 components of the VM
 */
Initializes all R0 components of the VM
Initializes all R0 components of the VM
static int vmR3InitRing0(PVM pVM)
{
    LogFlow(("vmR3InitRing0:\n"));
    int rc = VINF_SUCCESS;
    const char *psz = RTEnvGet("VBOX_SUPLIB_FAKE");
    if (!psz || strcmp(psz, "fake"))
    {
        rc = VMMR3InitR0(pVM);
    }
    else
        Log(("vmR3InitRing0: skipping because of VBOX_SUPLIB_FAKE=fake\n"));
    if (RT_SUCCESS(rc))
        rc = vmR3InitDoCompleted(pVM, VMINITCOMPLETED_RING0);
    if (RT_SUCCESS(rc))
        rc = vmR3InitDoCompleted(pVM, VMINITCOMPLETED_HM);
    if (RT_SUCCESS(rc))
        CPUMR3SetHWVirtEx(pVM, HMIsEnabled(pVM));
    LogFlow(("vmR3InitRing0: returns %Rrc\n", rc));
    return rc;
}
static int vmR3InitRing0 ( PVM pVM ) { LogFlow ( ( " \n " ) ) ; int rc = VINF_SUCCESS ; const char * psz = RTEnvGet ( " " ) ; if ( ! psz || strcmp ( psz , " " ) ) { rc = VMMR3InitR0 ( pVM ) ; } else Log ( ( " \n " ) ) ; if ( RT_SUCCESS ( rc ) ) rc = vmR3InitDoCompleted ( pVM , VMINITCOMPLETED_RING0 ) ; if ( RT_SUCCESS ( rc ) ) rc = vmR3InitDoCompleted ( pVM , VMINITCOMPLETED_HM ) ; if ( RT_SUCCESS ( rc ) ) CPUMR3SetHWVirtEx ( pVM , HMIsEnabled ( pVM ) ) ; LogFlow ( ( " \n " , rc ) ) ; return rc ; }
Initializes all R0 components of the VM
Initializes all R0 components of the VM
/*
     * Check for FAKE suplib mode.
     */ /*
         * Call the VMMR0 component and let it do the init.
         */ /*
     * Do notifications and return.
     */ /** @todo Move this to the VMINITCOMPLETED_HM notification handler. */