Page 1 of 1
Nested virtualization
Posted: 22. Jan 2020, 18:17
by VBProblems
Nested virtualization was available as a option in VirtualBox 6.1.0 but now it's greyed out on VirtualBox 6.1.2. My computer has a Skylake CPU so it should support it according to the documentation.

Re: Nested virtualization
Posted: 17. May 2020, 19:35
by VBProblems
Nested virtualization is still greyed out after upgrading to VirtualBox 6.1.8.
Re: Nested virtualization
Posted: 17. May 2020, 23:56
by fth0
VBProblems wrote:My computer has a Skylake CPU so it should support it according to the documentation.
I believe that the documentation is not precise enough.
The VirtualBox Manager only allows to enable the
Enable Nested VT-x/AMD-V checkbox, if the
VMCS Shadowing CPU feature is available, which isn't the case with your CPU. Please read two of my posts from other threads for some further information:
viewtopic.php?f=1&t=98106#p475731
viewtopic.php?f=1&t=98122#p475893
Re: Nested virtualization
Posted: 18. May 2020, 02:43
by VBProblems
I was not aware of VMCS shadowing and I thought there was no specific CPU feature needed for nested virtualization besides VT-x\AMD-v. This seems like an obscure feature to me because I couldn't find much documentation about it. I did find that the feature was introduced in Haswell and I have a desktop Skylake CPU. Skylake is newer than Haswell. I can't find much detail on exactly what CPUs support it.
Re: Nested virtualization
Posted: 18. May 2020, 16:33
by fth0
AFAIK,
VMCS Shadowing is needed for nested virtualization to be performant, like
EPT is needed for (non-)nested virtualization to be performant.
VMCS Shadowing was introduced as part of
Intel vPro. I have no evidence for it, but so far in all VBox.log files I've looked at, there is a correspondence of
VMCS Shadowing being available when the CPU is an
Intel vPro CPU according to
ark.intel.com.
Re: Nested virtualization
Posted: 18. May 2020, 18:18
by mpack
VBProblems wrote:I thought there was no specific CPU feature needed for nested virtualization besides VT-x\AMD-v.
It definitely needs more than that.
VT-x/AMD-v has been supported for more than a decade. Nested virtualization was not allowed in VirtualBox until recently (v6.0.x), and to begin with it was only supported on AMD hosts. Intel support only arrived in 6.1.0, so it's still very new.
As to what the precise requirements are, you'd probably have to work that out from the source code. This isn't the sort of technical data I'd expect to find in the user manual (and having just checked, I'm not finding any).