static int vmm_init(void) { int error; vmm_host_state_init(); vmm_ipinum = vmm_ipi_alloc(); if (vmm_ipinum == 0) vmm_ipinum = IPI_AST; error = vmm_mem_init(); if (error) return (error); if (vmm_is_intel()) ops = &vmm_ops_intel; else if (vmm_is_amd()) ops = &vmm_ops_amd; else return (ENXIO); vmm_msr_init(); vmm_resume_p = vmm_resume; return (VMM_INIT(vmm_ipinum)); }
int vmm_init(void) { int error; vmm_host_state_init(); error = vmm_mem_init(); if (error) return (error); ops = &vmm_ops_intel; error = VMM_INIT(); if (error == 0) vmm_initialized = 1; return (error); }