WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] X86 MCE: Add SRAR handler

>>> On 29.09.11 at 17:20, "Liu, Jinsong" <jinsong.liu@xxxxxxxxx> wrote:
> @@ -782,8 +821,12 @@ static void intel_default_mce_uhandler(
>  
>      switch (type)
>      {
> -    /* Panic if no handler for SRAR error */
>      case intel_mce_ucr_srar:
> +        if ( !guest_mode(regs) )
> +            *result = MCER_RESET;
> +        else
> +            *result = MCER_CONTINUE;
> +        break;
>      case intel_mce_fatal:
>          *result = MCER_RESET;
>          break;

Using the stack based registers for any decision in an MCE handler
seems bogus to me - without knowing that the error occurred
synchronously, the result is meaningless. Unfortunately I wasn't
able to spot - throughout your patch - what SRAR actually stands
for, and the manual is no help in that respect either. It does state,
however, that EIPV in three of four cases would be clear for these,
so using the registers on stack is likely wrong here.

This made me look at the current source, and there I see in
mce_urgent_action()

    if ( !(gstatus & MCG_STATUS_RIPV) && !guest_mode(regs))
        return -1;

which I think should say ... _EIPV and use || instead. Thoughts?

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel