VMware Workstation Shifting From Proprietary Code To Using Upstream KVM

Written by Michael Larabel in Virtualization on 31 October 2024 at 08:57 PM EDT. 46 Comments
VIRTUALIZATION
This isn't an off-schedule April Fools' Joke or anything like that but an exciting sign of the times: VMware Workstation will be shifting off its proprietary base and onto leveraging the upstream Linux Kernel-based Virtual Machine (KVM) for virtualization needs moving forward.

This week a kernel patch series hit the Linux kernel mailing list by Broadcom (formerly VMware) engineer Zack Rusin entitled KVM: x86: Small changes to support VMware guests. That patch series explicitly lays out:
"To be able to switch VMware products running on Linux to KVM some minor changes are required to let KVM run/resume unmodified VMware guests.

First allow enabling of the VMware backdoor via an api. Currently the setting of the VMware backdoor is limited to kernel boot parameters, which forces all VM's running on a host to either run with or without the VMware backdoor. Add a simple cap to allow enabling of the VMware backdoor on a per VM basis. The default for that setting remains the kvm.enable_vmware_backdoor boot parameter (which is false by default) and can be changed on a per-vm basis via the KVM_CAP_X86_VMWARE_BACKDOOR cap.

Second add a cap to forward hypercalls to userspace. I know that in general that's frowned upon but VMwre guests send quite a few hypercalls from userspace and it would be both impractical and largelly impossible to handle all in the kernel. The change is trivial and I'd be maintaining this code so I hope it's not a big deal."

Beyond the patch cover letter explicitly mentioning "to be able to switch VMware products running on Linux to KVM", I have been able to confirm directly with Broadcom that this indeed is in motion. VMware Workstation for desktop virtualization will indeed be shifting from their existing proprietary virtualization code and begin making use of the widely-used KVM code.

VMware Workstation KVM patches


However, Broadcom doesn't yet have a timeline for making this transition. In part that transition is going to depend upon how quickly their necessary KVM changes can be upstreamed and in turn picked up by the major Linux distributions. So with that said it will likely be well into 2025 at a minimum before an official transition given the length of the kernel merge windows and even longer before the non-rolling-release distributions upgrade to new kernel versions. But this move for VMware Workstation switching to KVM is indeed happening.

I'm not sure I ever envisioned VMware abandoning their proprietary virtualization code in favor of leveraging upstream KVM but in any event it's a terrific success story for the upstream KVM community. VMware Workstation will presumably remain a commercial/proprietary product (but already with free personal use) as opposed to transitioning like a full open-source project but in any event to see their key proprietary virtualization code move in favor of the open-source KVM code is a huge accomplishment.

Update: Broadcom would like to clarify that while using KVM for the CPU virtualization, they will continue to rely on all of the existing VMware virtual devices for graphics and other functionality. Also on both macOS and Windows they have migrated to the native CPU virtualization frameworks.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week