bhyve and virtualbox on the same host using EPT
Anish
akgupt3 at gmail.com
Tue Aug 6 22:33:49 UTC 2013
Each processor has its own EPT root pointer in VMCS. How many processors
are there in system and how many are given to Virtualbox.
error = vmcs_set_defaults(&vmx->vmcs[i],
(u_long)vmx_longjmp,
(u_long)&vmx->ctx[i],
vtophys(vmx->pml4ept),
pinbased_ctls,
procbased_ctls,
procbased_ctls2,
exit_ctls, entry_ctls,
vtophys(vmx->msr_bitmap),
vpid);
On Tue, Aug 6, 2013 at 3:02 PM, <mailinglists at debank.tv> wrote:
> All,
>
>
> I'm trying to run a bhyve VM on a host that's already running Virtualbox,
> the problem I encounter is bhyve doesn't detect EPT capabilities but the
> Virtualbox logs indicate EPT is in use and functional.
> My question is; is it possible for two pieces of virtualization software
> to use EPT on the same host?
>
> See below for the various logs, happy to provide more info if needed.
>
>
> Bhyve generates the following error after the bootloader screen:
>
> ------------------------------**-----------------------
> Booting...
> 4 vCPUs requested but only 1 available
> ------------------------------**-----------------------
>
> A quick look in the source code indicates that this error means bhyve
> can't use EPT and falls back to using 1 CPU, now the machine in question
> does have EPT capabilites (it lists POPCNT in dmesg):
>
> ------------------------------**-----------------------
> uname -a
> FreeBSD becks.debank.tv 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r253788M:
> Tue Jul 30 12:02:57 NZST 2013 root at becks.debank.tv:/usr/obj/**usr/src/sys/GENERIC
> amd64
> ------------------------------**-----------------------
> ------------------------------**-----------------------
> from dmesg
> CPU: Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz (2664.82-MHz K8-class
> CPU)
> Origin = "GenuineIntel" Id = 0x106a5 Family = 0x6 Model = 0x1a
> Stepping = 5
> Features=0xbfebfbff<FPU,VME,**DE,PSE,TSC,MSR,PAE,MCE,CX8,**
> APIC,SEP,MTRR,PGE,MCA,CMOV,**PAT,PSE36,CLFLUSH,DTS,ACPI,**
> MMX,FXSR,SSE,SSE2,SS,HTT,TM,**PBE>
> Features2=0x98e3bd<SSE3,**DTES64,MON,DS_CPL,VMX,EST,TM2,**
> SSSE3,CX16,xTPR,PDCM,SSE4.1,**SSE4.2,POPCNT>
> AMD Features=0x28100800<SYSCALL,**NX,RDTSCP,LM>
> AMD Features2=0x1<LAHF>
> TSC: P-state invariant, performance statistics
> real memory = 25769803776 (24576 MB)
> avail memory = 24060841984 (22946 MB)
> ------------------------------**-----------------------
> ------------------------------**-----------------------
> root at becks:~/bhyve # kldstat
> Id Refs Address Size Name
> 1 27 0xffffffff80200000 150e0d0 kernel
> 2 1 0xffffffff8170f000 224a98 zfs.ko
> 3 2 0xffffffff81934000 5c30 opensolaris.ko
> 4 1 0xffffffff8193a000 2d40 coretemp.ko
> 5 3 0xffffffff8193d000 51a68 vboxdrv.ko
> 6 2 0xffffffff81a12000 28c0 vboxnetflt.ko
> 7 2 0xffffffff81a15000 881d netgraph.ko
> 8 1 0xffffffff81a1e000 15ff ng_ether.ko
> 9 1 0xffffffff81a20000 3ec0 vboxnetadp.ko
> 10 1 0xffffffff81aba000 1037 cpuctl.ko
> 11 1 0xffffffff81abc000 1686ac vmm.ko
> ------------------------------**-----------------------
>
> The Virtualbox logs below show EPT in use:
> ------------------------------**-----------------------
> 00:00:00.419806 HWACCM: MSR_IA32_VMX_PROCBASED_CTLS2 = 7f00000000
> 00:00:00.419807 HWACCM: VMX_VMCS_CTRL_PROC_EXEC2_VIRT_**APIC
> 00:00:00.419807 HWACCM: VMX_VMCS_CTRL_PROC_EXEC2_EPT
> 00:00:00.419808 HWACCM: VMX_VMCS_CTRL_PROC_EXEC2_**
> DESCRIPTOR_INSTR_EXIT
> 00:00:00.419808 HWACCM: VMX_VMCS_CTRL_PROC_EXEC2_**RDTSCP
> 00:00:00.419809 HWACCM: VMX_VMCS_CTRL_PROC_EXEC2_**X2APIC
> 00:00:00.419809 HWACCM: VMX_VMCS_CTRL_PROC_EXEC2_VPID
> 00:00:00.419810 HWACCM: VMX_VMCS_CTRL_PROC_EXEC2_**WBINVD_EXIT
> ---- snip ------
> 00:00:00.419916 HWACCM: 32-bit and 64-bit guests supported.
> 00:00:00.419917 HWACCM: VMX enabled!
> 00:00:00.419918 HWACCM: Enabled nested paging
> 00:00:00.419919 HWACCM: EPT root page = 00000000b6167000
> 00:00:00.419922 HWACCM: Large page support enabled!
> ------------------------------**-----------------------
>
> Thanks,
> Rob Evers
>
> ______________________________**_________________
> freebsd-virtualization@**freebsd.org <freebsd-virtualization at freebsd.org>mailing list
> http://lists.freebsd.org/**mailman/listinfo/freebsd-**virtualization<http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization>
> To unsubscribe, send any mail to "freebsd-virtualization-**
> unsubscribe at freebsd.org <freebsd-virtualization-unsubscribe at freebsd.org>"
>
More information about the freebsd-virtualization
mailing list