aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBorislav Petkov <bp@suse.de>2014-05-22 10:40:54 -0400
committerBorislav Petkov <bp@suse.de>2014-06-22 12:36:39 -0400
commit38356c1fbd8cd0f44a32ede2c97f0eb639d06613 (patch)
tree0cd8a6420487dc6e8826b3b8d7d47a148e1552f9
parenta497c3ba1d97fc69c1e78e7b96435ba8c2cb42ee (diff)
x86, MCE: Kill CPU_POST_DEAD
In conjunction with cleaning up CPU hotplug, we want to get rid of CPU_POST_DEAD. Kill this instance here and rediscover CMCI banks at the end of CPU_DEAD. Link: http://lkml.kernel.org/r/http://lkml.kernel.org/r/1400750624-19238-1-git-send-email-bp@alien8.de Signed-off-by: Borislav Petkov <bp@suse.de>
-rw-r--r--arch/x86/kernel/cpu/mcheck/mce.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index bb92f38153b2..8fecdd34f2d2 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -2385,6 +2385,10 @@ mce_cpu_callback(struct notifier_block *nfb, unsigned long action, void *hcpu)
2385 threshold_cpu_callback(action, cpu); 2385 threshold_cpu_callback(action, cpu);
2386 mce_device_remove(cpu); 2386 mce_device_remove(cpu);
2387 mce_intel_hcpu_update(cpu); 2387 mce_intel_hcpu_update(cpu);
2388
2389 /* intentionally ignoring frozen here */
2390 if (!(action & CPU_TASKS_FROZEN))
2391 cmci_rediscover();
2388 break; 2392 break;
2389 case CPU_DOWN_PREPARE: 2393 case CPU_DOWN_PREPARE:
2390 smp_call_function_single(cpu, mce_disable_cpu, &action, 1); 2394 smp_call_function_single(cpu, mce_disable_cpu, &action, 1);
@@ -2396,11 +2400,6 @@ mce_cpu_callback(struct notifier_block *nfb, unsigned long action, void *hcpu)
2396 break; 2400 break;
2397 } 2401 }
2398 2402
2399 if (action == CPU_POST_DEAD) {
2400 /* intentionally ignoring frozen here */
2401 cmci_rediscover();
2402 }
2403
2404 return NOTIFY_OK; 2403 return NOTIFY_OK;
2405} 2404}
2406 2405