x86: fix wakeup_cpu with numaq/es7000, v2, fix
Impact: fix wakeup_secondary_cpu with hotplug
We can not put that into x86_quirks, because that is __initdata.
So try to move that to genapic, and add update_genapic in x86_quirks.
later we even could use that stub to:
1. autodetect CONFIG_ES7000_CLUSTERED_APIC
2. more correct inquire_remote_apic with apic_verbosity setting.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
index 498c1ef..0e9f446 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
@@ -615,7 +615,7 @@
return (send_status | accept_status);
}
-static int __devinit
+int __devinit
wakeup_secondary_cpu_via_init(int phys_apicid, unsigned long start_eip)
{
unsigned long send_status, accept_status = 0;
@@ -736,15 +736,6 @@
return (send_status | accept_status);
}
-static int __devinit
-wakeup_secondary_cpu(int apicid, unsigned long start_eip)
-{
- if (x86_quirks->wakeup_secondary_cpu)
- return x86_quirks->wakeup_secondary_cpu(apicid, start_eip);
-
- return wakeup_secondary_cpu_via_init(apicid, start_eip);
-}
-
struct create_idle {
struct work_struct work;
struct task_struct *idle;