KVM: VMX: Fix host msr corruption with preemption enabled
authorAvi Kivity <avi@qumranet.com>
Tue, 24 Jun 2008 08:48:49 +0000 (11:48 +0300)
committerAvi Kivity <avi@qumranet.com>
Tue, 24 Jun 2008 09:26:17 +0000 (12:26 +0300)
commita9b21b622958afc3f3bc5a23d266dd9ed1171fd3
treedaed282b0f588f31cb3997a16f2ad067b37fb74d
parent4fa6b9c5dc4134bdeac341d731a87783cc11ca10
KVM: VMX: Fix host msr corruption with preemption enabled

Switching msrs can occur either synchronously as a result of calls to
the msr management functions (usually in response to the guest touching
virtualized msrs), or asynchronously when preempting a kvm thread that has
guest state loaded.  If we're unlucky enough to have the two at the same
time, host msrs are corrupted and the machine goes kaput on the next syscall.

Most easily triggered by Windows Server 2008, as it does a lot of msr
switching during bootup.

Signed-off-by: Avi Kivity <avi@qumranet.com>
arch/x86/kvm/vmx.c