Commit ec5b3d32 authored by H. Peter Anvin's avatar H. Peter Anvin

x86, mce: remove invalid __cpuinit/__cpuexit annotations

Impact: Bug fix when CPU hotplug is disabled

Correct the following broken __cpuinit/__cpuexit annotations:

- mce_cpu_features() is called from mce_resume(), and so cannot be
  __cpuinit.
- mce_disable_cpu() and mce_reenable_cpu() are called from
  mce_cpu_callback(), and so cannot be __cpuexit().

Cc: Andi Kleen <ak@linux.intel.com>
Signed-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
parent f6d1826d
...@@ -598,7 +598,7 @@ static void mce_init(void *dummy) ...@@ -598,7 +598,7 @@ static void mce_init(void *dummy)
} }
/* Add per CPU specific workarounds here */ /* Add per CPU specific workarounds here */
static void __cpuinit mce_cpu_quirks(struct cpuinfo_x86 *c) static void mce_cpu_quirks(struct cpuinfo_x86 *c)
{ {
/* This should be disabled by the BIOS, but isn't always */ /* This should be disabled by the BIOS, but isn't always */
if (c->x86_vendor == X86_VENDOR_AMD) { if (c->x86_vendor == X86_VENDOR_AMD) {
...@@ -1056,7 +1056,7 @@ static __cpuinit void mce_remove_device(unsigned int cpu) ...@@ -1056,7 +1056,7 @@ static __cpuinit void mce_remove_device(unsigned int cpu)
} }
/* Make sure there are no machine checks on offlined CPUs. */ /* Make sure there are no machine checks on offlined CPUs. */
static void __cpuexit mce_disable_cpu(void *h) static void mce_disable_cpu(void *h)
{ {
int i; int i;
...@@ -1066,7 +1066,7 @@ static void __cpuexit mce_disable_cpu(void *h) ...@@ -1066,7 +1066,7 @@ static void __cpuexit mce_disable_cpu(void *h)
wrmsrl(MSR_IA32_MC0_CTL + i*4, 0); wrmsrl(MSR_IA32_MC0_CTL + i*4, 0);
} }
static void __cpuexit mce_reenable_cpu(void *h) static void mce_reenable_cpu(void *h)
{ {
int i; int i;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment