Mailing List Archive

EDAC: Is it possible to calculate which piece of memory is bad?
Hello,

I see the following errors:

EDAC MC0: CE page 0x8abba, offset 0xa10, grain 8, syndrome 0x4758, row 0, channel 0, label "": k8_edac
EDAC MC0: CE - no information available: k8_edac Error Overflow set
EDAC k8 MC0: extended error code: ECC chipkill x4 error
EDAC k8 MC0: general bus error: participating processor(local node origin), time-out(no timeout) memory transaction type(generic read), mem or i/o(mem access), cache level(generic)

Is it possible to use the page or offset to calculate which DIMM is having a
problem?

Justin.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: EDAC: Is it possible to calculate which piece of memory is bad? [ In reply to ]
On 3/29/2010 9:50 AM, Justin Piszcz wrote:
> Hello,
>
> I see the following errors:
>
> EDAC MC0: CE page 0x8abba, offset 0xa10, grain 8, syndrome 0x4758, row
> 0, channel 0, label "": k8_edac
> EDAC MC0: CE - no information available: k8_edac Error Overflow set
> EDAC k8 MC0: extended error code: ECC chipkill x4 error
> EDAC k8 MC0: general bus error: participating processor(local node
> origin), time-out(no timeout) memory transaction type(generic read), mem
> or i/o(mem access), cache level(generic)
>
> Is it possible to use the page or offset to calculate which DIMM is
> having a
> problem?
>
> Justin.
>

Theoretically, YES.

However, you would have to have some important information:
1) The number and size of each memory stick in the machine.
2) The physical location accessed. With virtual memory being the norm
there isn't always a 1-1 mapping here. But, this should be attainable.

James
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: EDAC: Is it possible to calculate which piece of memory is bad? [ In reply to ]
From: Justin Piszcz <jpiszcz@lucidpixels.com>
Date: Mon, Mar 29, 2010 at 09:40:38AM -0400

> Hello,
>
> I see the following errors:
>
> EDAC MC0: CE page 0x8abba, offset 0xa10, grain 8, syndrome 0x4758, row 0, channel 0, label "": k8_edac

It looks like it is the first DIMM on your mainboard, i.e., whichever
gets mapped to channel 0 of the DCT.

Sigh, someday we'll have a better mapping, hopefully, ... :|

> EDAC MC0: CE - no information available: k8_edac Error Overflow set
> EDAC k8 MC0: extended error code: ECC chipkill x4 error
> EDAC k8 MC0: general bus error: participating processor(local node origin), time-out(no timeout) memory transaction type(generic read), mem or i/o(mem access), cache level(generic)
>
> Is it possible to use the page or offset to calculate which DIMM is having a
> problem?


--
Regards/Gruss,
Boris.

--
Advanced Micro Devices, Inc.
Operating Systems Research Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: EDAC: Is it possible to calculate which piece of memory is bad? [ In reply to ]
On Tue, 30 Mar 2010, Borislav Petkov wrote:

> From: Justin Piszcz <jpiszcz@lucidpixels.com>
> Date: Mon, Mar 29, 2010 at 09:40:38AM -0400
>
>> Hello,
>>
>> I see the following errors:
>>
>> EDAC MC0: CE page 0x8abba, offset 0xa10, grain 8, syndrome 0x4758, row 0, channel 0, label "": k8_edac
>
> It looks like it is the first DIMM on your mainboard, i.e., whichever
> gets mapped to channel 0 of the DCT.
>
> Sigh, someday we'll have a better mapping, hopefully, ... :|
>
>> EDAC MC0: CE - no information available: k8_edac Error Overflow set
>> EDAC k8 MC0: extended error code: ECC chipkill x4 error
>> EDAC k8 MC0: general bus error: participating processor(local node origin), time-out(no timeout) memory transaction type(generic read), mem or i/o(mem access), cache level(generic)
>>
>> Is it possible to use the page or offset to calculate which DIMM is having a
>> problem?
>
>
> --
> Regards/Gruss,
> Boris.
>
> --
> Advanced Micro Devices, Inc.
> Operating Systems Research Center
>

Hi,

Thanks, how did you make that calculation?

Justin.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Re: EDAC: Is it possible to calculate which piece of memory is bad? [ In reply to ]
From: Justin Piszcz <jpiszcz@lucidpixels.com>
Date: Tue, Mar 30, 2010 at 04:00:48AM -0400

Hi,

[..]

> >>I see the following errors:
> >>
> >>EDAC MC0: CE page 0x8abba, offset 0xa10, grain 8, syndrome 0x4758, row 0, channel 0, label "": k8_edac
> >
> >It looks like it is the first DIMM on your mainboard, i.e., whichever
> >gets mapped to channel 0 of the DCT.
> >
> >Sigh, someday we'll have a better mapping, hopefully, ... :|
> >
> >>EDAC MC0: CE - no information available: k8_edac Error Overflow set
> >>EDAC k8 MC0: extended error code: ECC chipkill x4 error
> >>EDAC k8 MC0: general bus error: participating processor(local node origin), time-out(no timeout) memory transaction type(generic read), mem or i/o(mem access), cache level(generic)
> >>
> >>Is it possible to use the page or offset to calculate which DIMM is having a
> >>problem?

[..]

> Thanks, how did you make that calculation?

well, you seem to have a k8 system which means a single DRAM controller
with two channels. Assuming the output "row 0 channel 0" above is
correct (you're using the old k8_edac driver), all sane motherboard
layouts map channel 0 of the DCT to the first logical DIMM and row 0
means chip select row 0 which should be the first rank of the first
DIMM. What DIMMs are you using, by the way (exact part number)?

You can verify this after removing DIMM0 and checking whether you
still get those errors. Also, it would be helpful if you enabled
CONFIG_EDAC_DEBUG and CONFIG_EDAC_DEBUG_VERBOSE (if it existed then) and
send me the whole dmesg of the machine - it should dump the whole memory
configuration.

But as I said before, we need to have better mapping but I'll have to
have some free time first to be able to do it :)

--
Regards/Gruss,
Boris.

--
Advanced Micro Devices, Inc.
Operating Systems Research Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/