[vbox-dev] CoExistence of VMX on single host: KVM and VMware Workstation 7 (and VirtualBox)... - Is it finally possible?

Alexey Eremenko al4321 at gmail.com
Fri Nov 20 11:39:15 GMT 2009

Hi All !

There is ongoing discussion of making multiple VMMs work on the same
host, and share Intel hardware virtualization, VMX.

I have found the following thread, and I hope this will be interesting for you:

---------- Forwarded message ----------
From: SqUe Squarious <squarious at gmail.com>
Date: Thu, Nov 19, 2009 at 7:57 PM
Subject: KVM and VMware Workstation 7 - Is it finally possible?
To: kvm at vger.kernel.org

First time here, I am old user of vmware-server that recently moved to
KVM. I am excited with KVM and I don't want to go back to vmware
server for no reason. However as a developer I sometimes need to work
with windows desktops and vmware workstation does a good job on this.
I know kernel VT cannot work with two different hypervisors as it was
never designed to do. So vmware workstation 6.5 could not run when kvm
was running.

With vmware workstation 7 there is a change, I will copy paste parts
of vmware communities thread but please read the whole thread.

"Being a user of KVM and reading what you I said I gave a try to
workstation 7 to see if something have changed.
Although the first time a vmware vm start-ups all KVM vms crash at the
second try both KVM and VMware vms run simultaneously. After that
success I ran at KVM irc channel to debug that crash problem but
didn't believe me that I had two hypervisors with VT emulation running
on the same host."

"It's a hack--Intel has assured us that it cannot possibly work. "

"But then something changed: in Workstation 7/Player 3/Fusion 3,
jmattson found a hack which allows 2 foreign hypervisors to work on
the same host with VT. It works really well in practice as you have
been able to verify, but Intel warned us that sometimes it might not
work in theory. I suspect this is the reason why jmattson does not
want to talk about it."

"Everything would be fine if all hypervisor vendors could agree to
leave VMX operation when yielding the CPU. VMware already does this if
the CPU was not in VMX operation when we were scheduled. There may be
some resistance to this idea for performance reasons. However, our
current hack would be more robust if all hypervisor vendors could
agree to clear the "launched" state of every active VMCS on the
physical core before yielding the core to us. There may still be some
resistance to this idea for performance reasons, but perhaps that's
the starting point of a negotiation."

"In my case I have KVM/libvirt installed that autostarts 4 linux
server VMs. When I first boot up my computer (and KVM autostarts) the
first time that I will startup a vmware virtual machine, all KVM vms
will crash instantly with log saying

kvm: unhandled exit 6
kvm_run returned -22"
After that crash if I restart KVM, starting/stoping vmware vms does
not affect them

"Thank you for providing those additional details. Unhandled exit 6 is
likely to mean VM-instruction error number 6, which means "VMRESUME
with a corrupted VMCS (indicates corruption of the current VMCS)."
This is exactly what we would expect when our hack fails. This
particular failure could be avoided if the kvm hypervisor would clear
the "launched" state of every active VMCS on the physical core before
yielding the core to us. There may be other solutions as well, but
there is nothing that VMware can do unilaterally to address this
problem. Any feasible solution requires cooperation among the many
hypervisor vendors."

Can these two hypervisors coexist in the same host with peace? In my
case does KVM crash (only the first time) because of the reason that
jmattson says?

Full thread:
Whole thread: http://communities.vmware.com/message/1420821
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

-Alexey Eromenko "Technologov"

More information about the vbox-dev mailing list