public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Borislav Petkov <borislav.petkov@amd.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: mingo@elte.hu, hpa@zytor.com, tglx@linutronix.de,
	norsk5@yahoo.com, aris@redhat.com, linux-kernel@vger.kernel.org,
	x86@kernel.org
Subject: Re: [PATCH 07/14] mce3: pass mce info to EDAC for decoding
Date: Tue, 21 Jul 2009 12:44:43 +0200	[thread overview]
Message-ID: <20090721104443.GC32338@aftab> (raw)
In-Reply-To: <20090720180446.GB16072@basil.fritz.box>

On Mon, Jul 20, 2009 at 08:04:46PM +0200, Andi Kleen wrote:
> 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 archive, but if you're
> trying to catch corrected MCs you're hooking into the 
> wrong function. print_mce is only called for PCC=1.

Well, I was able to mce-inject a PCC=0 MCE with UC set:

HARDWARE ERROR
CPU 0: Machine Check Exception:                0 Bank 5: b400200000000f0f
TSC a84597c1a0 ADDR 1234 
PROCESSOR 2:100f22 TIME 1248092118 SOCKET 0 APIC 0
MC5_STATUS: Uncorrected error, report: yes, MiscV: invalid, CPU context corrupt: no
 FR Error: CPU Watchdog timer expire.
 Transaction type: Generic(Generic), Timed out, Cache Level: L3/Generic, generic
This is not a software problem!

Irrespective, I'm more focused on decoding all MCEs that are graded to
be output, no matter the severity and obviate the staring and meditating
on MC5_STATUS (0xb400200000000f0f) for example while trying to decipher
what kind of error it was. Long term, we'd like to do more decoding
depending on the error type and use EDAC for that.

> 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.

Actually I wanted to worry about that only after we have more than one
vendor-specific MCE decoders :).
 
> It would be probably cleaner if you defined a standard
> notifier chain interface.

Sounds like a cleaner solution, at a first glance. Will look into it.

Thanks.

-- 
Regards/Gruss,
Boris.

Operating | Advanced Micro Devices GmbH
  System  | Karl-Hammerschmidt-Str. 34, 85609 Dornach b. München, Germany
 Research | Geschäftsführer: Thomas M. McCoy, Giuliano Meroni
  Center  | Sitz: Dornach, Gemeinde Aschheim, Landkreis München
  (OSRC)  | Registergericht München, HRB Nr. 43632


  parent reply	other threads:[~2009-07-21 10:45 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-20 16:12 [RFC PATCH 0/14] amd64_edac: marry mcheck to amd64 edac Borislav Petkov
2009-07-20 16:12 ` [PATCH 01/14] amd64_edac: simplify error type bits extractors Borislav Petkov
2009-07-20 17:56   ` Aristeu Rozanski
2009-07-21  9:40     ` Borislav Petkov
2009-07-20 16:12 ` [PATCH 02/14] amd64_edac: cleanup amd64_process_error_info Borislav Petkov
2009-07-20 16:12 ` [PATCH 03/14] amd64_edac: cleanup/complete NB MCE decoding Borislav Petkov
2009-07-20 16:12 ` [PATCH 04/14] amd64_edac: fixup ExtError decoding Borislav Petkov
2009-07-20 16:12 ` [PATCH 05/14] amd64_edac: remove memory and GART TLB error decoders Borislav Petkov
2009-07-20 16:12 ` [PATCH 06/14] amd64_edac: cleanup amd64_decode_bus_error Borislav Petkov
2009-07-20 16:12 ` [PATCH 07/14] mce3: pass mce info to EDAC for decoding Borislav Petkov
2009-07-20 18:04   ` Andi Kleen
2009-07-20 18:27     ` Doug Thompson
2009-07-20 19:22       ` Andi Kleen
2009-07-20 20:17         ` H. Peter Anvin
2009-07-20 21:02           ` Doug Thompson
2009-07-21  3:41           ` Hidetoshi Seto
2009-07-21  6:51             ` Andi Kleen
2009-07-21 10:49               ` Borislav Petkov
2009-08-04 14:45                 ` Ingo Molnar
2009-07-20 21:00         ` Doug Thompson
2009-07-20 19:44       ` [PATCH 07/14] mce3: pass mce info to EDAC for decoding II Andi Kleen
2009-07-21 10:51         ` Borislav Petkov
2009-07-21 11:07           ` Andi Kleen
2009-07-21 12:52             ` Borislav Petkov
2009-07-21 10:44     ` Borislav Petkov [this message]
2009-07-21 11:04       ` [PATCH 07/14] mce3: pass mce info to EDAC for decoding Andi Kleen
2009-07-21 12:56         ` Borislav Petkov
2009-07-20 16:12 ` [PATCH 08/14] amd64_edac: carve out MCi_STATUS decoding Borislav Petkov
2009-07-20 16:13 ` [PATCH 09/14] amd64_edac: carve out decoding of MCi_STATUS ErrorCode Borislav Petkov
2009-07-20 16:13 ` [PATCH 10/14] amd64_edac: decode data cache MCEs Borislav Petkov
2009-07-20 16:13 ` [PATCH 11/14] amd64_edac: decode instruction " Borislav Petkov
2009-07-20 16:13 ` [PATCH 12/14] amd64_edac: decode bus unit MCEs Borislav Petkov
2009-07-20 16:13 ` [PATCH 13/14] amd64_edac: decode load store MCEs Borislav Petkov
2009-07-20 16:13 ` [PATCH 14/14] amd64_edac: decode FR MCEs Borislav Petkov
2009-07-20 17:24 ` [RFC PATCH 0/14] amd64_edac: marry mcheck to amd64 edac Doug Thompson
2009-07-21  3:52 ` Hidetoshi Seto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090721104443.GC32338@aftab \
    --to=borislav.petkov@amd.com \
    --cc=andi@firstfloor.org \
    --cc=aris@redhat.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=norsk5@yahoo.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox