From: Hui Wang Date: Mon, 6 Feb 2012 07:11:00 +0000 (-0300) Subject: edac: sb_edac: Fix a INTERLEAVE_MODE() misuse X-Git-Tag: v3.4-rc1~62^2~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ad9c40b7dd749d6429c8b21178c125004c6dc75d;p=thirdparty%2Fkernel%2Flinux.git edac: sb_edac: Fix a INTERLEAVE_MODE() misuse We can identify dram interleave mode from the Dram Rule register rather than Dram Interleave list register. In this context, the reg of INTERLEAVE_MODE(reg) contains the Dram Interleave list register, we can't get interleave mode from the reg, while the variable interleave_mode saves the the mode got from the Dram Rule register, so we use the variable to replace INTERLEAVE_MDDE(reg) here. Signed-off-by: Hui Wang Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/edac/sb_edac.c b/drivers/edac/sb_edac.c index f256a121fec30..843545beba641 100644 --- a/drivers/edac/sb_edac.c +++ b/drivers/edac/sb_edac.c @@ -923,7 +923,7 @@ static int get_memory_error_data(struct mem_ctl_info *mci, addr, limit, sad_way + 7, - INTERLEAVE_MODE(reg) ? "" : "XOR[18:16]"); + interleave_mode ? "" : "XOR[18:16]"); if (interleave_mode) idx = ((addr >> 6) ^ (addr >> 16)) & 7; else