lkml.org 
[lkml]   [2012]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH 2/2] Register native mce handler as vMCE bounce back point
On Tue, Apr 17, 2012 at 05:06:49PM +0000, Liu, Jinsong wrote:
> Konrad Rzeszutek Wilk wrote:
> > On Tue, Apr 17, 2012 at 12:55:49PM +0000, Liu, Jinsong wrote:
> >> Konrad Rzeszutek Wilk wrote:
> >>> On Mon, Apr 16, 2012 at 01:07:35AM +0000, Liu, Jinsong wrote:
> >>>>> From 76e40a60878ff72986fd8d92611400195ae0f997 Mon Sep 17 00:00:00
> >>>>> 2001
> >>>> From: Liu, Jinsong <jinsong.liu@intel.com>
> >>>> Date: Mon, 16 Apr 2012 00:16:58 +0800
> >>>> Subject: [PATCH 2/2] Register native mce handler as vMCE bounce
> >>>> back point
> >>>>
> >>>> When xen hyeprvisor inject vMCE to guest, use native mce handler to
> >>>> handle it
> >>>
> >>> hypervisor
> >>>
> >>>>
> >>>> 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 | 10 +++++++---
> >>>> 1 files changed, 7 insertions(+), 3 deletions(-)
> >>>>
> >>>> diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
> >>>> index 15628d4..346ba64 100644 --- a/arch/x86/xen/enlighten.c
> >>>> +++ b/arch/x86/xen/enlighten.c
> >>>> @@ -614,8 +614,8 @@ 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
> >>>> + * about. Xen will handle faults like double_fault,
> >>>> + * so we should never see them. Warn if
> >>>> * there's an unexpected IST-using fault handler. */
> >>>> if (addr == (unsigned long)debug)
> >>>> @@ -630,7 +630,11 @@ 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;
> >>>> + /* + * when xen hyeprvisor inject vMCE to guest,
> >>>> + * use native mce handler to handle it
> >>>> + */
> >>>> + ;
> >>>
> >>>
> >>> Can you just take the check out?
> >>
> >> What do you mean by 'check out'? remove
> >> else if (addr == (unsigned long) machine_check) {
> >> ;
> >> }
> >> ?
> >>
> >> That would fail to register mce bounce back point.
> >
> > Right, b/c right after we hit this check:
> > /* Some other trap using IST? */
> > 639 if (WARN_ON(val->ist != 0))
> > 640 return 0;
> > 641 }
> >
> > .. And the val->ist is not set for MCEs right?
>
> No, mce ist is set as 0/5 (32/64), set_intr_gate_ist(X86_TRAP_MC, &machine_check, MCE_STACK);

OK. then your idea is the right one. Please just fix the spelling and
re-submit.

>
> >
> >>
> >>>
> >>>
> >>>> #endif
> >>>> } else {
> >>>> /* Some other trap using IST? */
> >>>> --
> >>>> 1.7.1
> >>
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe
> >> linux-kernel" in the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> Please read the FAQ at http://www.tux.org/lkml/


\
 
 \ /
  Last update: 2012-04-17 20:27    [W:0.031 / U:0.864 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site