[Cbe-oss-dev] [patch 1/9] powerpc/cell/edac: log a syndrome code in case of correctable error
Benjamin Herrenschmidt
benh at kernel.crashing.org
Thu Jul 17 15:59:07 EST 2008
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
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>
> ---
> 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
>
More information about the cbe-oss-dev
mailing list