Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e2c03888 authored by Andi Kleen's avatar Andi Kleen Committed by Linus Torvalds
Browse files

[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: default avatarAndi Kleen <ak@suse.de>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 2eb1bdba
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -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)
+1 −1
Original line number Diff line number Diff line
@@ -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);
}
+1 −0
Original line number Diff line number Diff line
@@ -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);