Stefor07Introduction After upgrading to a modern system with full virtualization support —...
After upgrading to a modern system with full virtualization support — including VT-x, EPT, IOMMU, TPM 2.0, and Secure Boot — I expected everything to work flawlessly. Instead, I encountered crashes and instability when running nested virtualization scenarios, particularly when attempting to run VMware inside VMware Workstation Pro.
At first, I suspected hardware instability, BIOS misconfiguration, or a VMware bug. However, after extensive testing, I discovered the real culprit: Windows Virtualization-Based Security (VBS).
This article covers:
The issue surfaced when I upgraded to a 14th generation Intel CPU with hybrid cores (P-cores and E-cores). While VMware Workstation Pro ran perfectly on the host, problems arose when I tried running VMware inside a Windows 11 24H2 VM.
Attempting to boot a Windows 11 ISO inside the nested VM resulted in an immediate crash: VMware reported that an exception had caused a breakpoint, and the VM shut down.
Virtualization-Based Security (VBS) is fully integrated into Windows 11's kernel and takes exclusive control of VT-x/AMD-V. This prevents desktop hypervisors from accessing hardware virtualization directly, causing conflicts with nested virtualization.
I tried several manual approaches to disable VBS:
bcdedit /set hypervisorlaunchtype off
None of these methods worked completely.
I discovered Microsoft's official script for disabling VBS:
Download: DG_Readiness_Tool
Usage:
DG_Readiness_Tool_v3.6.ps1 -Disable
After running the script and rebooting, VBS is successfully disabled.
Important: This change is temporary — Windows re-enables VBS after subsequent reboots, so the script must be rerun when needed.
During testing, I discovered that HypervisorIOMMUPolicy plays a crucial role in nested virtualization stability.
To disable it, run in elevated PowerShell:
bcdedit /set HypervisorIOMMUPolicy off
Restart your computer for the change to take effect.
Disabling HypervisorIOMMUPolicy prevents the guest VM from receiving full IOMMU exposure, which:
Since VBS cannot be permanently removed from Windows 11 24H2/25H2, here are your options:
The table below shows which hypervisors work under different configurations when running inside VMware VMs:
| Hypervisor / Software | HypervisorIOMMUPolicy ON | HypervisorIOMMUPolicy OFF | VBS Disabled | Notes |
|---|---|---|---|---|
| VMware Workstation Pro | ❌ Crash | ❌ Unstable | ✅ Works | Requires full VBS disable |
| VirtualBox | ✅ Works | ✅ Works | ✅ Works | Reliable in all configurations |
| Android Emulators (AVD) | ❌ May fail | ✅ Works | ✅ Works | Best with HypervisorIOMMUPolicy OFF |
| KVM (Linux VM) | ❌ Cannot run | ✅ Works | ✅ Works | Requires HypervisorIOMMUPolicy OFF |
| Hyper-V (Windows VM) | ❌ Not supported | ❌ Limited | ❌ Limited | Nested Hyper-V not functional |
| Lightweight hypervisors | ❌ May fail | ✅ Works | ✅ Works | Depends on VT-x exposure |
Legend: ✅ Works reliably | ❌ Fails or unstable
HypervisorIOMMUPolicy only
bcdedit /set HypervisorIOMMUPolicy off
HypervisorIOMMUPolicy AND VBS
DG_Readiness_Tool_v3.6.ps1 -Disable
Hardware requirements:
Long-term solutions:
Modern Windows 11's VBS and IOMMU policies create significant challenges for nested virtualization. While these security features protect system integrity, they limit hardware virtualization access.
By understanding the interaction between VBS, HypervisorIOMMUPolicy, and VT-x exposure, advanced users can:
For users requiring frequent nested virtualization, Linux hosts or Windows 11 22H2 in dual-boot offer the most practical, stable solutions without ongoing workarounds.