sb_edac: Fix a typo and a thinko in address handling for Haswell
[deliverable/linux.git] / drivers / edac / sb_edac.c
index 1acf57ba4c86bdc95b2e6d4d8281295f5568f6fc..b9648323106b87b8de9242ca2957d248a57c82e5 100644 (file)
@@ -1242,9 +1242,9 @@ static int get_memory_error_data(struct mem_ctl_info *mci,
                        bits = GET_BITFIELD(addr, 7, 8) << 1;
                        bits |= GET_BITFIELD(addr, 9, 9);
                } else
-                       bits = GET_BITFIELD(addr, 7, 9);
+                       bits = GET_BITFIELD(addr, 6, 8);
 
-               if (interleave_mode) {
+               if (interleave_mode == 0) {
                        /* interleave mode will XOR {8,7,6} with {18,17,16} */
                        idx = GET_BITFIELD(addr, 16, 18);
                        idx ^= bits;
This page took 0.023591 seconds and 5 git commands to generate.