CPU HOTPLUG: avoid hotadd when proper possible_map isn't specified
cpu-hot-add should be fail if cpu is not set in cpu_possible_map. If go ahead, the system will panic soon. Especially, arch which requires additional_cpus= parameter should handle this. Tested on ia64. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
470fd64644
commit
73e753a50d
1 changed files with 9 additions and 0 deletions
|
@ -265,6 +265,15 @@ static int __cpuinit _cpu_up(unsigned int cpu, int tasks_frozen)
|
||||||
int __cpuinit cpu_up(unsigned int cpu)
|
int __cpuinit cpu_up(unsigned int cpu)
|
||||||
{
|
{
|
||||||
int err = 0;
|
int err = 0;
|
||||||
|
if (!cpu_isset(cpu, cpu_possible_map)) {
|
||||||
|
printk(KERN_ERR "can't online cpu %d because it is not "
|
||||||
|
"configured as may-hotadd at boot time\n", cpu);
|
||||||
|
#if defined(CONFIG_IA64) || defined(CONFIG_X86_64) || defined(CONFIG_S390)
|
||||||
|
printk(KERN_ERR "please check additional_cpus= boot "
|
||||||
|
"parameter\n");
|
||||||
|
#endif
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
|
|
||||||
mutex_lock(&cpu_add_remove_lock);
|
mutex_lock(&cpu_add_remove_lock);
|
||||||
if (cpu_hotplug_disabled)
|
if (cpu_hotplug_disabled)
|
||||||
|
|
Loading…
Reference in a new issue