Patch "x86 EDAC, sb_edac.c: Repair damage introduced when "fixing" channel address" has been added to the 4.5-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
x86 EDAC, sb_edac.c: Repair damage introduced when "fixing" channel address
to the 4.5-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
x86-edac-sb_edac.c-repair-damage-introduced-when-fixing-channel-address.patch
and it can be found in the queue-4.5 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
ff15e95c82768d589957dbb17d7eb7dba7904659Mon Sep 17 00:00:00 2001
From: Tony Luck <[email protected]>
Date: Thu, 14 Apr 2016 10:21:52 -0700
Subject: x86 EDAC, sb_edac.c: Repair damage introduced when "fixing" channel address
From: Tony Luck <[email protected]>
commit ff15e95c82768d589957dbb17d7eb7dba7904659 upstream.
In commit:
eb1af3b71f9d ("Fix computation of channel address")
I switched the "sck_way" variable from holding the log2 value read from the h/w to instead be the actual number. Unfortunately it is needed in log2 form when used to shift the address.
--- drivers/edac/sb_edac.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/edac/sb_edac.c +3 -3
@@ -2118,7 +2118,7 @@ static int get_memory_error_data(struct } ch_way =TAD_CH (reg) +1 ; - sck_way =1 <<TAD_SOCK (reg); + sck_way =TAD_SOCK (reg);if (ch_way ==3 ) idx = addr >>6 ;
@@ -2157,7 +2157,7 @@ static int get_memory_error_data(structswitch (ch_way) {case 2 :case 4 : - sck_xch =1 << sck_way * (ch_way >>1 ); + sck_xch = (1 << sck_way) * (ch_way >>1 );break ;default :sprintf (msg,"Invalid mirror set. Can't decode addr" );
@@ -2193,7 +2193,7 @@ static int get_memory_error_data(struct ch_addr = addr - offset; ch_addr >>= (6 + shiftup); - ch_addr /= ch_way * sck_way; + ch_addr /= sck_xch; ch_addr <<= (6 + shiftup); ch_addr |= addr & ((1 << (6 + shiftup)) -1 );
Patches currently in stable-queue which might be from [email protected] are
queue-4.5/x86-edac-sb_edac.c-repair-damage-introduced-when-fixing-channel-address.patch queue-4.5/x86-mce-avoid-using-object-after-free-in-genpool.patch queue-4.5/x86-edac-sb_edac.c-take-account-of-channel-hashing-when-needed.patch