smp, generic: introduce arch_disable_smp_support() instead of disable_ioapic_setup()

Impact: cleanup

disable_ioapic_setup() in init/main.c is ugly as the function is
x86-specific. The #ifdef inline prototype there is ugly too.

Replace it with a generic arch_disable_smp_support() function - which
has a weak alias for non-x86 architectures and for non-ioapic x86 builds.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/include/linux/smp.h b/include/linux/smp.h
index 715196b..d41a3a8 100644
--- a/include/linux/smp.h
+++ b/include/linux/smp.h
@@ -67,6 +67,12 @@
 extern void smp_cpus_done(unsigned int max_cpus);
 
 /*
+ * Callback to arch code if there's nosmp or maxcpus=0 on the
+ * boot command line:
+ */
+extern void arch_disable_smp_support(void);
+
+/*
  * Call a function on all other processors
  */
 int smp_call_function(void(*func)(void *info), void *info, int wait);