[PATCH] x86_64: Fix the additional_cpus=.. option

It didn't set up the CPU possible map early enough, so the
option didn't actually work.

Noticed by Heiko Carstens

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Andi Kleen 2006-02-26 04:18:46 +01:00 committed by Linus Torvalds
parent 2eb1bdbad8
commit e2c0388866
3 changed files with 8 additions and 1 deletions

View File

@ -423,6 +423,12 @@ static __init void parse_cmdline_early (char ** cmdline_p)
else if(!memcmp(from, "elfcorehdr=", 11))
elfcorehdr_addr = memparse(from+11, &from);
#endif
#ifdef CONFIG_SMP
else if (!memcmp(from, "additional_cpus=", 16))
setup_additional_cpus(from+16);
#endif
next_char:
c = *(from++);
if (!c)

View File

@ -1244,7 +1244,7 @@ void __cpu_die(unsigned int cpu)
printk(KERN_ERR "CPU %u didn't die...\n", cpu);
}
static __init int setup_additional_cpus(char *s)
__init int setup_additional_cpus(char *s)
{
return get_option(&s, &additional_cpus);
}

View File

@ -134,6 +134,7 @@ extern int force_iommu;
extern int reboot_force;
extern int notsc_setup(char *);
extern int setup_additional_cpus(char *);
extern void smp_local_timer_interrupt(struct pt_regs * regs);