X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=init%2Fmain.c;h=6441083f827355108980280d7c7dd08f1ec16f5e;hb=8b0e5860cb099d7958d13b00ffbc35ad02735700;hp=844209453c02c2248114972fca3f0fcddbdf513d;hpb=a24ba44cf2adf166bbb1028d57ca0f4b636a1ef7;p=linux-2.6-omap-h63xx.git diff --git a/init/main.c b/init/main.c index 844209453c0..6441083f827 100644 --- a/init/main.c +++ b/init/main.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -135,14 +136,14 @@ unsigned int __initdata setup_max_cpus = NR_CPUS; * greater than 0, limits the maximum number of CPUs activated in * SMP mode to . */ -#ifndef CONFIG_X86_IO_APIC -static inline void disable_ioapic_setup(void) {}; -#endif + +void __weak arch_disable_smp_support(void) { } static int __init nosmp(char *str) { setup_max_cpus = 0; - disable_ioapic_setup(); + arch_disable_smp_support(); + return 0; } @@ -152,14 +153,14 @@ static int __init maxcpus(char *str) { get_option(&str, &setup_max_cpus); if (setup_max_cpus == 0) - disable_ioapic_setup(); + arch_disable_smp_support(); return 0; } early_param("maxcpus", maxcpus); #else -#define setup_max_cpus NR_CPUS +const unsigned int setup_max_cpus = NR_CPUS; #endif /* @@ -539,6 +540,12 @@ asmlinkage void __init start_kernel(void) */ lockdep_init(); debug_objects_early_init(); + + /* + * Set up the the initial canary ASAP: + */ + boot_init_stack_canary(); + cgroup_init_early(); local_irq_disable();