VMware Workstation Shifting From Proprietary Code To Using Upstream KVM
- Reference: 0001503083
- News link: https://www.phoronix.com/news/VMware-Workstation-KVM
- Source link:
This week a kernel patch series hit the Linux kernel mailing list by Broadcom (formerly VMware) engineer Zack Rusin entitled [1]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.
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. In turn once this change happens, VMware Workstation is fundamentally a nice GUI alternative to other (free and open-source) options like GNOME Boxes and virt-manager.
[1] https://lore.kernel.org/lkml/20241030033514.1728937-1-zack.rusin@broadcom.com/
edwaleni