[patch 1/9] powerpc/cell/edac: log a syndrome code in case of correctable error

Doug Thompson norsk5 at yahoo.com
Fri Jul 18 04:35:52 EST 2008


--- Benjamin Herrenschmidt <benh at kernel.crashing.org> wrote:

> Arnd, Maxim, please, next time, send that patch or at least CC the
> bluesmoke-devel list for EDAC related bits.
> 
> Doug, if you are ok with this patch, I'll merge it via the powerpc

fine with me, acked below

doug t

> tree.
> 
> Cheers,
> Ben.
> 
> On Tue, 2008-07-15 at 21:51 +0200, arnd at arndb.de 
> 
> > From: Maxim Shchetynin <maxim at de.ibm.com>
> > 
> > If correctable error occurs the syndrome code was logged as 0. This patch
> > lets EDAC to log a correct syndrome code to make problem investigation
> > easier.
> > 
> > Signed-off-by: Maxim Shchetynin <maxim at de.ibm.com>
> > Signed-off-by: Arnd Bergmann <arnd at arndb.de>

Acked-by: Doug Thompson <dougthompson at xmission.com>


> > ---
> >  drivers/edac/cell_edac.c |    5 +++--
> >  1 files changed, 3 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/edac/cell_edac.c b/drivers/edac/cell_edac.c
> > index b54112f..0e024fe 100644
> > --- a/drivers/edac/cell_edac.c
> > +++ b/drivers/edac/cell_edac.c
> > @@ -33,7 +33,7 @@ static void cell_edac_count_ce(struct mem_ctl_info *mci, int chan, u64 ar)
> >  {
> >  	struct cell_edac_priv		*priv = mci->pvt_info;
> >  	struct csrow_info		*csrow = &mci->csrows[0];
> > -	unsigned long			address, pfn, offset;
> > +	unsigned long			address, pfn, offset, syndrome;
> >  
> >  	dev_dbg(mci->dev, "ECC CE err on node %d, channel %d, ar = 0x%016lx\n",
> >  		priv->node, chan, ar);
> > @@ -44,10 +44,11 @@ static void cell_edac_count_ce(struct mem_ctl_info *mci, int chan, u64 ar)
> >  		address = (address << 1) | chan;
> >  	pfn = address >> PAGE_SHIFT;
> >  	offset = address & ~PAGE_MASK;
> > +	syndrome = (ar & 0x000000001fe00000ul) >> 21;
> >  
> >  	/* TODO: Decoding of the error addresss */
> >  	edac_mc_handle_ce(mci, csrow->first_page + pfn, offset,
> > -			  0, 0, chan, "");
> > +			  syndrome, 0, chan, "");
> >  }
> >  
> >  static void cell_edac_count_ue(struct mem_ctl_info *mci, int chan, u64 ar)
> > -- 
> > 1.5.4.3
> > 
> 
> 


W1DUG



More information about the Linuxppc-dev mailing list