Commit 537bddd0 authored by Eric Badger's avatar Eric Badger Committed by Tony Luck

EDAC/sb_edac: Fix top-of-high-memory value for Broadwell/Haswell

The computation of TOHM is off by one bit. This missed bit results in
too low a value for TOHM, which can cause errors in regular memory to
incorrectly report:

  EDAC MC0: 1 CE Error at MMIOH area, on addr 0x000000207fffa680 on any memory

Fixes: 50d1bb93 ("sb_edac: add support for Haswell based systems")
Cc: stable@vger.kernel.org
Reported-by: default avatarMeeta Saggi <msaggi@purestorage.com>
Signed-off-by: default avatarEric Badger <ebadger@purestorage.com>
Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
Link: https://lore.kernel.org/r/20211010170127.848113-1-ebadger@purestorage.com
parent 0b6d4ab2
......@@ -1052,7 +1052,7 @@ static u64 haswell_get_tohm(struct sbridge_pvt *pvt)
pci_read_config_dword(pvt->info.pci_vtd, HASWELL_TOHM_1, &reg);
rc = ((reg << 6) | rc) << 26;
return rc | 0x1ffffff;
return rc | 0x3ffffff;
}
static u64 knl_get_tolm(struct sbridge_pvt *pvt)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment