]> git.baikalelectronics.ru Git - kernel.git/commit
x86/MCE/AMD: Fix the thresholding machinery initialization order
authorBorislav Petkov <bp@suse.de>
Tue, 27 Nov 2018 13:41:37 +0000 (14:41 +0100)
committerBorislav Petkov <bp@suse.de>
Wed, 28 Nov 2018 09:10:36 +0000 (10:10 +0100)
commitb3d5d71d9853513673cdfc2deb451c6fbda6b100
tree9717bd4fcefcdb068fd737b31f9f52f054dcf1fd
parent4f391cdd09232229b8dfa664fe3b339b97ac9097
x86/MCE/AMD: Fix the thresholding machinery initialization order

Currently, the code sets up the thresholding interrupt vector and only
then goes about initializing the thresholding banks. Which is wrong,
because an early thresholding interrupt would cause a NULL pointer
dereference when accessing those banks and prevent the machine from
booting.

Therefore, set the thresholding interrupt vector only *after* having
initialized the banks successfully.

Fixes: f76375f564ce ("x86/mce/AMD: Reset Threshold Limit after logging error")
Reported-by: Rafał Miłecki <rafal@milecki.pl>
Reported-by: John Clemens <clemej@gmail.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Tested-by: Rafał Miłecki <rafal@milecki.pl>
Tested-by: John Clemens <john@deater.net>
Cc: Aravind Gopalakrishnan <aravindksg.lkml@gmail.com>
Cc: linux-edac@vger.kernel.org
Cc: stable@vger.kernel.org
Cc: Tony Luck <tony.luck@intel.com>
Cc: x86@kernel.org
Cc: Yazen Ghannam <Yazen.Ghannam@amd.com>
Link: https://lkml.kernel.org/r/20181127101700.2964-1-zajec5@gmail.com
Link: https://bugzilla.kernel.org/show_bug.cgi?id=201291
arch/x86/kernel/cpu/mcheck/mce_amd.c