KVM: Add VT-x machine check support
authorAndi Kleen <ak@linux.intel.com>
Mon, 8 Jun 2009 09:37:09 +0000 (17:37 +0800)
committerAvi Kivity <avi@redhat.com>
Wed, 10 Jun 2009 09:27:08 +0000 (12:27 +0300)
commita0861c02a981c943573478ea13b29b1fb958ee5b
treea98fb24b4cc4cc7fb58037be64fd4cc42c35bf38
parent56b237e31abf4d6dbc6e2a0214049b9a23be4883
KVM: Add VT-x machine check support

VT-x needs an explicit MC vector intercept to handle machine checks in the
hyper visor.

It also has a special option to catch machine checks that happen
during VT entry.

Do these interceptions and forward them to the Linux machine check
handler. Make it always look like user space is interrupted because
the machine check handler treats kernel/user space differently.

Thanks to Jiang Yunhong for help and testing.

Cc: stable@kernel.org
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/include/asm/vmx.h
arch/x86/kernel/cpu/mcheck/mce_64.c
arch/x86/kvm/vmx.c