summaryrefslogtreecommitdiff
path: root/drivers/edac
diff options
context:
space:
mode:
authorAristeu Rozanski <aris@redhat.com>2014-06-02 18:15:28 (GMT)
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-06-26 18:46:46 (GMT)
commitd7c660b7dcb2f3c3835432cf733fba03507f4387 (patch)
tree07bcdf48bd5e3aa4a3c2445de40df5fd2bb1fed1 /drivers/edac
parent2ff3a308b5c776bdf4641311b87c843fe1bc3785 (diff)
downloadlinux-d7c660b7dcb2f3c3835432cf733fba03507f4387.tar.xz
sb_edac: make minimal use of channel_mask
channel_mask will be used in the future to determine which group of memory modules is causing the errors since when mirroring, lockstep and close page are enabled you can't. While that doesn't happen, use the channel_mask to determine the channel instead of relying on the MC event/exception. Cc: Tony Luck <tony.luck@intel.com> Signed-off-by: Aristeu Rozanski <aris@redhat.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/edac')
-rw-r--r--drivers/edac/sb_edac.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/edac/sb_edac.c b/drivers/edac/sb_edac.c
index 939b54c..4342926 100644
--- a/drivers/edac/sb_edac.c
+++ b/drivers/edac/sb_edac.c
@@ -1678,6 +1678,9 @@ static void sbridge_mce_output_error(struct mem_ctl_info *mci,
* EDAC core should be handling the channel mask, in order to point
* to the group of dimm's where the error may be happening.
*/
+ if (!pvt->is_lockstep && !pvt->is_mirrored && !pvt->is_close_pg)
+ channel = first_channel;
+
snprintf(msg, sizeof(msg),
"%s%s area:%s err_code:%04x:%04x socket:%d channel_mask:%ld rank:%d",
overflow ? " OVERFLOW" : "",