diff options
| author | Qiuxu Zhuo <qiuxu.zhuo@intel.com> | 2024-08-14 14:10:11 +0800 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-10-17 15:11:16 +0200 |
| commit | c3dfec3c05b65fe385041b0076c8a4eac32ea8c4 (patch) | |
| tree | f1ffe6b451c503ecef961b480d6d6146f0690615 /drivers/edac | |
| parent | 62356668d855deb075a93fdf9f26888c4f80b7d6 (diff) | |
EDAC/igen6: Fix conversion of system address to physical memory address
commit 0ad875f442e95d69a1145a38aabac2fd29984fe3 upstream.
The conversion of system address to physical memory address (as viewed by
the memory controller) by igen6_edac is incorrect when the system address
is above the TOM (Total amount Of populated physical Memory) for Elkhart
Lake and Ice Lake (Neural Network Processor). Fix this conversion.
Fixes: 10590a9d4f23 ("EDAC/igen6: Add EDAC driver for Intel client SoCs using IBECC")
Signed-off-by: Qiuxu Zhuo <qiuxu.zhuo@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/stable/20240814061011.43545-1-qiuxu.zhuo%40intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/edac')
| -rw-r--r-- | drivers/edac/igen6_edac.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/edac/igen6_edac.c b/drivers/edac/igen6_edac.c index c46880a934da..74c5aad1f608 100644 --- a/drivers/edac/igen6_edac.c +++ b/drivers/edac/igen6_edac.c @@ -245,7 +245,7 @@ static u64 ehl_err_addr_to_imc_addr(u64 eaddr, int mc) if (igen6_tom <= _4GB) return eaddr + igen6_tolud - _4GB; - if (eaddr < _4GB) + if (eaddr >= igen6_tom) return eaddr + igen6_tolud - igen6_tom; return eaddr; |
