Messages in this thread Patch in this message | ![/](/images/icornerl.gif) | | From | "Liu, Jinsong" <> | Subject | [PATCH 02/10] xen/mce: Change the machine check point | Date | Fri, 23 Dec 2011 10:24:29 +0000 |
| |
From 80221e743d1a693670d701f383da26c8e5d5bf98 Mon Sep 17 00:00:00 2001 From: Liu Jinsong <jinsong.liu@intel.com> Date: Wed, 7 Dec 2011 05:26:16 +0800 Subject: [PATCH 02/10] xen/mce: Change the machine check point
This patch backport from Jeremy's pvops commit 073349667402682c997394b3fcdbbeb6707f368f
Enable MCE support in dom0, so that if a MCE happen and that MCE impact dom0, dom0 can receive a vMCE.
Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com> 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> --- arch/x86/xen/enlighten.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index b073e4c..13e7a16 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -526,7 +526,7 @@ static int cvt_gate_to_trap(int vector, const gate_desc *val, * Look for known traps using IST, and substitute them * appropriately. The debugger ones are the only ones we care * about. Xen will handle faults like double_fault and - * machine_check, so we should never see them. Warn if + * nmi, so we should never see them. Warn if * there's an unexpected IST-using fault handler. */ if (addr == (unsigned long)debug) @@ -541,7 +541,10 @@ static int cvt_gate_to_trap(int vector, const gate_desc *val, return 0; #ifdef CONFIG_X86_MCE } else if (addr == (unsigned long)machine_check) { - return 0; + if (xen_initial_domain()) + addr = (unsigned long)machine_check; + else + return 0; #endif } else { /* Some other trap using IST? */ -- 1.6.5.6[unhandled content-type:application/octet-stream] | ![\](/images/icornerr.gif) |