All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Borislav Petkov <borislav.petkov@amd.com>
Cc: Andi Kleen <andi@firstfloor.org>,
	Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Doug Thompson <norsk5@yahoo.com>,
	tglx@linutronix.de, 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, 4 Aug 2009 16:45:02 +0200	[thread overview]
Message-ID: <20090804144502.GK7746@elte.hu> (raw)
In-Reply-To: <20090721104924.GD32338@aftab>


* Borislav Petkov <borislav.petkov@amd.com> wrote:

> On Tue, Jul 21, 2009 at 08:51:28AM +0200, Andi Kleen wrote:
> > On Tue, Jul 21, 2009 at 12:41:34PM +0900, Hidetoshi Seto wrote:
> > > H. Peter Anvin wrote:
> > > >  If you want modules to change the behavior, you're talking about a
> > > > *dynamic* change -- the call will point to different things at different
> > > > points in time -- so you need another mechanism, i.e. function pointers.
> > > 
> > > Just FYI, machine check handler on ia64 has such function pointer.
> > > 
> > > [arch/ia64/kernel/mca.c]
> > >     826 /* Function pointer for extra MCA recovery */
> > >     827 int (*ia64_mca_ucmc_extension)
> > >     828         (void*,struct ia64_sal_os_state*)
> > >     829         = NULL;
> > 
> > A notifier would be a much more flexible solution. Function 
> > pointers don't really work well with multiple users, which might 
> > well happen here.
> > 
> > However on the other hand I have some doubts it's really a good 
> > idea to expose fatal MCEs to modules. MCE is a rather critical 
> > code path (a bit similar to an oops), with the machine already 
> > somewhat instable in many cases and if you allow arbitary 
> > modules to hook into that you risk long term instability.
> > 
> > So if a notifier is done I would recommend to only limit it to 
> > corrected MCEs (machine_check_poll), not fatal ones.
> 
> However, the idea is to decode _all_ MCEs so we could look into 
> moving the decoding bits into the EDAC core or some other more 
> appropriate place. Ingo?
> 
> We could then reroute the non fatals to EDAC for further decoding.

Yep, obviously the kernel entity with the wider view (which is EDAC 
here) should interpret such errors and decide policy or do some good 
default actions. The arch level MCE code is basically a lowlevel 
platform driver to the EDAC code.

And please dont do stupid notifiers. They are opaque and cause 
various problems. Integrate the code for good - there's no technical 
reason to keep it all separate.

	Ingo

  reply	other threads:[~2009-08-04 14: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 [this message]
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     ` [PATCH 07/14] mce3: pass mce info to EDAC for decoding Borislav Petkov
2009-07-21 11:04       ` 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=20090804144502.GK7746@elte.hu \
    --to=mingo@elte.hu \
    --cc=andi@firstfloor.org \
    --cc=aris@redhat.com \
    --cc=borislav.petkov@amd.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=norsk5@yahoo.com \
    --cc=seto.hidetoshi@jp.fujitsu.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.