summaryrefslogtreecommitdiffstats
path: root/drivers/edac
diff options
context:
space:
mode:
authorAristeu Rozanski <aris@redhat.com>2014-06-02 15:15:28 -0300
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-06-26 15:46:46 -0300
commitd7c660b7dcb2f3c3835432cf733fba03507f4387 (patch)
tree07bcdf48bd5e3aa4a3c2445de40df5fd2bb1fed1 /drivers/edac
parent2ff3a308b5c776bdf4641311b87c843fe1bc3785 (diff)
downloadlinux-d7c660b7dcb2f3c3835432cf733fba03507f4387.tar.bz2
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 939b54c4a87c..4342926f1d32 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" : "",