KVM: Fix reboot on Intel hosts
authorAvi Kivity <avi@redhat.com>
Tue, 21 Sep 2010 17:59:43 +0000 (19:59 +0200)
committerMarcelo Tosatti <mtosatti@redhat.com>
Thu, 23 Sep 2010 14:31:56 +0000 (11:31 -0300)
commitca242ac9960dc61530e25a2c190e4e13fd5f1ecb
tree96ecac4191e1e1146002df587d0076e6e61e63d0
parent6bbfb2653177a00f70e57e53625502d43804fed0
KVM: Fix reboot on Intel hosts

When we reboot, we disable vmx extensions or otherwise INIT gets blocked.
If a task on another cpu hits a vmx instruction, it will fault if vmx is
disabled.  We trap that to avoid a nasty oops and spin until the reboot
completes.

Problem is, we sleep with interrupts disabled.  This blocks smp_send_stop()
from running, and the reboot process halts.

Fix by enabling interrupts before spinning.

KVM-Stable-Tag.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
virt/kvm/kvm_main.c