-
Notifications
You must be signed in to change notification settings - Fork 798
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WSL 2 needs Hyper-V enabled. But this conflicts with 3rd party software ( No nested VT-x in the root domain ) #5030
Comments
Does it work well nowadays? When I tried that a few months ago performance within VBox was horrible. :-( |
According to a Virtualbox dev/employee (posted yesterday):
https://forums.virtualbox.org/viewtopic.php?f=6&t=90853&start=240#p474299 I am not saying stop developing the Hypervisor Platform API. This issue is about also exposing nested virtualization additionally. |
+1 for make ExposeVirtualizationExtensions enable globally and enable nested virtualization for 3-rd party virtualization softwares. |
So is this resolved? |
@therealkenc genius. Closing the issue without any comment or reply. |
For stability issues related to Vbox, feel encouraged to continue the discussion at the link you provided. Third party VM vendors are working closely with MSFT on these issues; they are being taken seriously. There is an issue for nested virtualization scenarios over at #4193, which for the time being remains open. For questions/suggestion about the hypervisor platform, see this user voice. For broad discussion and commentary, reddit and twitter. Not because no one cares. Because they are better platforms for general discussion and commentary. |
Thanks for the reply @therealkenc. #4193 is already linked above, but a different problem. I am happy that MSFT is supporting its partners use of Hypervisor Platform API. But again different issue from nested virtualization in root domain. I will check if there is a matching issue on user voice when I have time. (Other's contributions welcome). |
This is the closest user voice issue that I found: https://windowsserver.uservoice.com/forums/295050-virtualization/suggestions/39471682-allow-host-to-run-other-hypervisor-via-nested-vir |
As of VMware's Workstation version 15.5.5, Windows Hyper-V and VMware Workstation (again, 15.5 and greater) can coexist. Here's VMware's take on that: https://blogs.vmware.com/workstation/2020/05/vmware-workstation-now-supports-hyper-v-mode.html |
What's going on with VirtualBOX? Any news on this front? |
They can coexist but 3D acceleration is NOT working, because nested virtualization is not working :-( |
This is not nested virtualization, but the use of hyper-v interface. This is more like vmware panel controlling hyper-v, and is precisely what is not wanted. |
it also conflicts with tencent gameloop emulator |
the latest VirtualBox6.1 using hyper-v backend is still very choppy and unstable |
No wonder Virtualbox has always been unstable with Hyper-V backend. Since May 2018 the implementation was broken and CPU registers under HyperV had wrong values. That means instability, crashes, data corruption in downloads and disk, and so on. This fix in latest test builds (>=r140351) should make Virtualbox finally usable with the Hyper-V backend. |
Note that this patch is not yet included in the September '20 release of VirtualBox, i.e. 6.1.14.
|
Everywhere is written that Docker needs Hyper-V to be enabled because of WLS 2. Of course, after enabling Hyper-V, the VirtualBox can't start any windows client VM (Linux client VM are working horribly). Anyway I thought that I could disable/enable Hyper-V when needed and hence switching between docker and Vritual Box (depent on needs). Suddenly I figured out that Docker is working (at least the "getting started" example) with DISABLED Hyper-V and Containers. Sadly Virtual Box still can't start any VM. Any thoughts? |
@kstoykov That means you are probably under the hypervisor. Not only hyper-v or containers but Sandbox, VirtualizedBasedSecurity and more can also enable it... Open elevated PowerShell and run |
can't believe this is still broken. wsl2 is dead to me until this is fixed :( |
I just updated to 20251.1 and WSL2 and VMware Workstation 16 works together. hypervisorlaunchtype is set to Auto. The issue is finally fixed for me. |
@ivanzud Using proper Nested Virtualization ( ExposeVirtualizationExtensions in the root domain ) or with the Hypervisor Platform API (WHVP) workaround? |
VMWare Player 16 works for me with WSL 2, but nested virtualization is not supported and graphics acceleration too :-( VMWare version - 16.0.0 build-16894299 Virtualize Intel VT-x cannot be set -> graphics acceleration cannot be enabled |
@AlexeiScherbakov |
This is precisely my problem. I want wsl2 alongside 3rd Party Virtualization solutions WITH 3D graphics acceleration enabled in order to keep playing old games. Until this problem is resolved, I am not going to update from wsl to wsl2. |
Still not working. Bummer!! It really sucks need to manually 'switch' this hyper off/auto if I want to get VBOX(W10) working or WSL2... hypervisorlaunchtype auto --> enables WSL2 & disables w10 VBOX |
You can also simply use Windows Features and enable/disable WIndows Virtual Machine. Both options; bcdedit and Win Features require a reboot, Ridiculous in the post-2020 Cloud era we have to deal with these incompatibilties and lack of vendor support on these issues. |
April 24th, 2022 and we still need to toggle |
Bump |
Still nested virtualization on VMWare not working within "bcdedit /set hypervisorlaunchtype auto" mode, So we can not have Docker Desktop ( Hyper-V or WSL/2) in Windows & VMWare with nested virtualization on windows at the same time! Shhhhhhhh |
this is so ridiculous |
Wow so shameful. |
WSL 2 needs Hyper-V enabled. But this conflicts with 3rd party software like VMware or Virtualbox.
It is the same issue as why those tools will not run with Windows Defender Credential Guard enabled.
The official solution as per the FAQ is that VMware and Virtualbox change their software so it uses the Hyper-V backend instead of their own via the Hypervisor Platform API. [2]
However this API has been buggy for the last few Windows builds and after 2 years it is still not stable. [4]
Wouldn't it be easier to just enable ExposeVirtualizationExtensions globally?
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
So that if Vmware or Virtualbox are started they will be able to access the Intel VT-x (and AMD equivalent) instructions?
Basically I finally want to be able to run WSL2 while still keeping the Virtualbox support that I rely on. And I don't want to wait another 2-3 years until the Hypervisor Platform API matures and then probably still having performance regressions.
Can I enable ExposeVirtualizationExtensions for the client that the main Windows 10 OS runs in. Not talking about inside WSL2 client here. I don't know what to put for the
VMName
though. Is this feasible?[1] https://superuser.com/questions/1208850/why-cant-virtualbox-or-vmware-run-with-hyper-v-enabled-on-windows-10/1291879#comment2284544_1291879
[2] https://docs.microsoft.com/en-us/windows/wsl/wsl2-faq
[3] https://docs.microsoft.com/en-us/virtualization/api/
[4] https://forums.virtualbox.org/viewtopic.php?t=90853
The text was updated successfully, but these errors were encountered: