Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: amd64_edac: Do not falsely trigger kerneloops
This commit is contained in:
commit
676ad58553
@ -2658,10 +2658,11 @@ static void amd64_restore_ecc_error_reporting(struct amd64_pvt *pvt)
|
|||||||
* the memory system completely. A command line option allows to force-enable
|
* the memory system completely. A command line option allows to force-enable
|
||||||
* hardware ECC later in amd64_enable_ecc_error_reporting().
|
* hardware ECC later in amd64_enable_ecc_error_reporting().
|
||||||
*/
|
*/
|
||||||
static const char *ecc_warning =
|
static const char *ecc_msg =
|
||||||
"WARNING: ECC is disabled by BIOS. Module will NOT be loaded.\n"
|
"ECC disabled in the BIOS or no ECC capability, module will not load.\n"
|
||||||
" Either Enable ECC in the BIOS, or set 'ecc_enable_override'.\n"
|
" Either enable ECC checking or force module loading by setting "
|
||||||
" Also, use of the override can cause unknown side effects.\n";
|
"'ecc_enable_override'.\n"
|
||||||
|
" (Note that use of the override may cause unknown side effects.)\n";
|
||||||
|
|
||||||
static int amd64_check_ecc_enabled(struct amd64_pvt *pvt)
|
static int amd64_check_ecc_enabled(struct amd64_pvt *pvt)
|
||||||
{
|
{
|
||||||
@ -2673,7 +2674,7 @@ static int amd64_check_ecc_enabled(struct amd64_pvt *pvt)
|
|||||||
|
|
||||||
ecc_enabled = !!(value & K8_NBCFG_ECC_ENABLE);
|
ecc_enabled = !!(value & K8_NBCFG_ECC_ENABLE);
|
||||||
if (!ecc_enabled)
|
if (!ecc_enabled)
|
||||||
amd64_printk(KERN_WARNING, "This node reports that Memory ECC "
|
amd64_printk(KERN_NOTICE, "This node reports that Memory ECC "
|
||||||
"is currently disabled, set F3x%x[22] (%s).\n",
|
"is currently disabled, set F3x%x[22] (%s).\n",
|
||||||
K8_NBCFG, pci_name(pvt->misc_f3_ctl));
|
K8_NBCFG, pci_name(pvt->misc_f3_ctl));
|
||||||
else
|
else
|
||||||
@ -2681,13 +2682,13 @@ static int amd64_check_ecc_enabled(struct amd64_pvt *pvt)
|
|||||||
|
|
||||||
nb_mce_en = amd64_nb_mce_bank_enabled_on_node(pvt->mc_node_id);
|
nb_mce_en = amd64_nb_mce_bank_enabled_on_node(pvt->mc_node_id);
|
||||||
if (!nb_mce_en)
|
if (!nb_mce_en)
|
||||||
amd64_printk(KERN_WARNING, "NB MCE bank disabled, set MSR "
|
amd64_printk(KERN_NOTICE, "NB MCE bank disabled, set MSR "
|
||||||
"0x%08x[4] on node %d to enable.\n",
|
"0x%08x[4] on node %d to enable.\n",
|
||||||
MSR_IA32_MCG_CTL, pvt->mc_node_id);
|
MSR_IA32_MCG_CTL, pvt->mc_node_id);
|
||||||
|
|
||||||
if (!ecc_enabled || !nb_mce_en) {
|
if (!ecc_enabled || !nb_mce_en) {
|
||||||
if (!ecc_enable_override) {
|
if (!ecc_enable_override) {
|
||||||
amd64_printk(KERN_WARNING, "%s", ecc_warning);
|
amd64_printk(KERN_NOTICE, "%s", ecc_msg);
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
ecc_enable_override = 0;
|
ecc_enable_override = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user