-
Notifications
You must be signed in to change notification settings - Fork 576
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
VMware compatibility with WSL2 (should raise awareness of limitations) #1820
Comments
I've been having issues with VMs on my laptop for months and months. Specifically, they will freeze, hang, mess up resuming, especially after I have put my laptop on sleep and then opened it again. I thought it was my laptop doing some weird power management stuff, but I realised that it only happens when WSL2 is on. It has to have something to do with all this compatibility stuff. It's ridiculous tbh, WSL2 + VM was sold as seamless but there are all these issues years on. |
@polarathene is your request here to update the WSL docs to include information on how to run it with VMware to make it compatible? Our goal on the docs is to keep it to WSL specific information. WSL relies on Hyper-V, and VMware has support for Hyper-V our recommendation is that any VMware set up information should be found on the VMware docs. |
TL;DR: Installing WSL2 prevents access to existing VMware guests (configured with
My request is to warn the reader that enabling WSL2 as documented may prevent access to their existing VMs. I have detailed the issues in the original post above, but effectively following the WSL2 docs:
I am aware. That link you provided is in my original message (from a quote of the current WSL2 docs). This does not mean a user with VMware is going to have a smooth experience when they enable WSL2 and later discover that they have to stop what they're doing and backup WSL2 work to restore later, so that they can uninstall WSL2 to backup the incompatible VM guests. If they were warned in advance from WSL2 docs, instead of being mislead that VMware is compatible (as if no friction would be introduced preventing access to existing VMs), this would have been a much more positive experience for the user. Regardless, even if the user is aware of the limitations of the Hyper-V compatible mode, due to those limitations performance of the VM guests suffers. For a casual user who doesn't enable the virtualization performance features, they're none the wiser, but this is fairly standard. It's the same virtualization features that WSL2 wants. So yes, VMware guests can be configured to work with WSL2 installed, but it's not without drawbacks. WSL2 experience (drawbacks)My primary interest in WSL2 was curiosity as I have run Linux as a daily driver. My VMware guest running Linux was working well and I used it with Docker, I was curious to try Docker Desktop on Windows and that required WSL2 too. WSL2 has some convenience, but depending on workload the resource usage can be quite problematic, especially in low-disk space scenarios where WSL2 poses a risk. I would still endorse a VM guest given all the issues and friction experienced with WSL2. Additionally, my experience with WSL2 was:
Off-topic - Windows corruptionI have features of Windows that no longer work. For example: $ powercfg /batteryreport /output battery_report.html
The Power Efficiency Diagnostic library (energy.dll) could not be loaded. I'm inclined to believe the out of disk space events were related to that, causing some corruption (related commands for windows diagnostics to scan/repair corrupted data it manages fails). However, that could be due to something else as Windows on this laptop has encountered various problems over the past 6 months related to graphics drivers, forced updates (Windows or vendor firmware), power management, etc. |
Documentation Issue
UPDATE:
The current docs for WSL2 don't indicate either concern, which introduces a bad first impression + a poor UX which can be frustrating to troubleshoot. It would be a more positive experience to such users if the documentation could give a heads-up so that enabling WSL2 does not feel so disruptive (with various errors for VMware usage).
Similar caveat for VMware might be relevant?
VT-x
/AMD-V
.It'd be helpful to clarify this restricted compatibility upfront, I had checked the docs prior to installing WSL2, which implied I could still access my VMWare guests without configuration changes. If I had known in advance it would have been easier to prepare for, instead of the added friction imposed after enabling Hyper-V / WSL2.
VMware Workstation Player 17.x (installed prior to WSL2).
Additional Context:
Advice for basic workaround to switch between the two.
A user recently referenced a SuperUser answer:
Above provides more technical insight on different context + ULM mitigation (impact would vary by HW).
Additional advice on steps to revert Windows virtualization features to restore previous usable VMware experience (deactivate WSL, VBS (via group policy?), VMP (link advises)).
Link to documentation page
From quoted sources above:
In fairness, VMware hasn't updated their own docs since 2020Q2, only stating support for VMware Workstation 15.x, as if to imply anything newer is also unsupported 🤷♂️
Suggested Improvements
VMware and VirtualBox are referenced in docs together, and direct users to a rather long issue (382 comments) from July 2020 at: #798
There's likely too much noise built up over time in that thread. It may be wiser to have two separate issues in 2023 for WSL2 2.0.0 going forward, one for VirtualBox and another for VMware?
It seems to be the preferred approach to delegate information to a Github issue than refine the docs content on the subject presumably?
I'd like to request an improvement on the actual docs that at least clarify the situation with VMware support.
In the "Virtual Machine Settings" window for a guest, the CPU section has two checkboxes in the "Virtualization Engine" subsection. Neither can be enabled when WSL2 / Hyper-V is active:
This can impact performance, which the VMware docs "Limitations of Host VBS mode" also notes performance will be degraded. VMware will prompt awareness about mitigations also being applied when attempting to run in a nested context and that it'll affect performance further.
Similar reports on performance becoming abysmal is noted for VirtualBox in it's dedicated issue.
Similar request for clarification on compatibility to be documented for VirtualBox (can work without certain features and reduced performance): #1807 (comment)
The text was updated successfully, but these errors were encountered: