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

Commit b9a09a06 authored by Yong Zhang's avatar Yong Zhang Committed by Ralf Baechle
Browse files

MIPS: call set_cpu_online() on cpu being brought up with irq disabled



To prevent a problem as commit 5fbd036b [sched: Cleanup cpu_active madness]
and commit 2baab4e9 [sched: Fix select_fallback_rq() vs cpu_active/cpu_online]
try to resolve, move set_cpu_online() to the brought up CPU and with irq
disabled.

Signed-off-by: default avatarYong Zhang <yong.zhang0@gmail.com>
Cc: Sergei Shtylyov <sshtylyov@mvista.com>
Cc: David Daney <david.daney@cavium.com>
Acked-by: default avatarDavid Daney <david.daney@cavium.com>
Patchwork: https://patchwork.linux-mips.org/patch/3851/


Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 5309bdac
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -122,6 +122,8 @@ asmlinkage __cpuinit void start_secondary(void)


	notify_cpu_starting(cpu);
	notify_cpu_starting(cpu);


	set_cpu_online(cpu, true);

	set_cpu_sibling_map(cpu);
	set_cpu_sibling_map(cpu);


	cpu_set(cpu, cpu_callin_map);
	cpu_set(cpu, cpu_callin_map);
@@ -197,8 +199,6 @@ int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *tidle)
	while (!cpu_isset(cpu, cpu_callin_map))
	while (!cpu_isset(cpu, cpu_callin_map))
		udelay(100);
		udelay(100);


	set_cpu_online(cpu, true);

	return 0;
	return 0;
}
}