[PATCH v3 28/31] edac: don't OOPS if the csrow is not visible

From: Mauro Carvalho Chehab
Date: Thu Feb 09 2012 - 19:02:24 EST


[ 119.831403] EDAC DEBUG: edac_mc_handle_error: edac_mc_handle_error: incrementing csrows (-1,0)
[ 119.831418] BUG: unable to handle kernel paging request at 000000010000001b
[ 119.838677] IP: [<ffffffffa0131276>] edac_mc_handle_error+0x45e/0x8c1 [edac_core]

Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>
---
drivers/edac/edac_mc.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/edac/edac_mc.c b/drivers/edac/edac_mc.c
index 91545a5..4145fa6 100644
--- a/drivers/edac/edac_mc.c
+++ b/drivers/edac/edac_mc.c
@@ -1029,11 +1029,14 @@ void edac_mc_handle_error(const enum hw_event_mc_err_type type,
if (!enable_filter) {
strcpy(label, "any memory");
} else {
+ debugf4("%s: incrementing csrows (%d,%d)\n",
+ __func__, row, chan);
if (type == HW_EVENT_ERR_CORRECTED) {
- if (row >= 0)
+ if (row >= 0) {
mci->csrows[row].ce_count++;
- if (chan >= 0)
- mci->csrows[row].channels[chan].ce_count++;
+ if (chan >= 0)
+ mci->csrows[row].channels[chan].ce_count++;
+ }
} else
if (row >= 0)
mci->csrows[row].ue_count++;
--
1.7.8

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/