Re: [PATCH 07/14] mce3: pass mce info to EDAC for decoding

From: Doug Thompson
Date: Mon Jul 20 2009 - 14:27:22 EST


--- On Mon, 7/20/09, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:

> From: Andi Kleen <andi@xxxxxxxxxxxxxx>
> Subject: Re: [PATCH 07/14] mce3: pass mce info to EDAC for decoding
> To: "Borislav Petkov" <borislav.petkov@xxxxxxx>
> Cc: mingo@xxxxxxx, hpa@xxxxxxxxx, tglx@xxxxxxxxxxxxx, norsk5@xxxxxxxxx, aris@xxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, x86@xxxxxxxxxx, "Andi Kleen" <andi@xxxxxxxxxxxxxx>
> Date: Monday, July 20, 2009, 12:04 PM
> On Mon, Jul 20, 2009 at 06:12:58PM
> +0200, Borislav Petkov wrote:
> > Use a weakly defined symbol instead of ugly ifdefs.
>
> I'm not sure what you're trying to achieve,

The goal is to have a default handler within the kernel and a more specific handler in a module after it has loaded. Using the weak symbol as a mechanism to do that. I haven't used that, so I don't know if it works.

> but if you're
> trying to catch corrected MCs you're hooking into the
> wrong function. print_mce is only called for PCC=1.
>
> Also if you're checking for specific banks you
> need to check for vendor/cpu model first of course.
>
> In your current implementation e.g. a Intel CPU
> would pass some random event into your AMD specific code,
> which is probably not intended and might even crash.

On an Intel CPU based system, the AMD EDAC module wouldn't load due the missing AMD PCI Vendor/Device ID values during the module probe phase.

>
> It would be probably cleaner if you defined a standard
> notifier chain interface.

That might be a better and explicit solution

doug t


>
> -Andi
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/