aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiu, Jinsong <jinsong.liu@intel.com>2012-06-07 08:10:37 -0400
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2012-07-19 15:51:38 -0400
commit05e36006adc3046f86f2be8652a22d5f77ebd6ea (patch)
tree7f207e99da26d04de115383f09c6b2fd937fd87c
parenta8fccdb0617386695a13ec742a61b5c935b63795 (diff)
xen/mce: Register native mce handler as vMCE bounce back point
When Xen hypervisor inject vMCE to guest, use native mce handler to handle it Signed-off-by: Ke, Liping <liping.ke@intel.com> Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
-rw-r--r--arch/x86/xen/enlighten.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index 9a6346865c49..0c1ab43f6672 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -626,8 +626,8 @@ static int cvt_gate_to_trap(int vector, const gate_desc *val,
626 /* 626 /*
627 * Look for known traps using IST, and substitute them 627 * Look for known traps using IST, and substitute them
628 * appropriately. The debugger ones are the only ones we care 628 * appropriately. The debugger ones are the only ones we care
629 * about. Xen will handle faults like double_fault and 629 * about. Xen will handle faults like double_fault,
630 * machine_check, so we should never see them. Warn if 630 * so we should never see them. Warn if
631 * there's an unexpected IST-using fault handler. 631 * there's an unexpected IST-using fault handler.
632 */ 632 */
633 if (addr == (unsigned long)debug) 633 if (addr == (unsigned long)debug)
@@ -642,7 +642,11 @@ static int cvt_gate_to_trap(int vector, const gate_desc *val,
642 return 0; 642 return 0;
643#ifdef CONFIG_X86_MCE 643#ifdef CONFIG_X86_MCE
644 } else if (addr == (unsigned long)machine_check) { 644 } else if (addr == (unsigned long)machine_check) {
645 return 0; 645 /*
646 * when xen hypervisor inject vMCE to guest,
647 * use native mce handler to handle it
648 */
649 ;
646#endif 650#endif
647 } else { 651 } else {
648 /* Some other trap using IST? */ 652 /* Some other trap using IST? */