]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: stop: execute platform callback from cpu_stop code
authorWill Deacon <will.deacon@arm.com>
Mon, 6 Jun 2011 14:49:23 +0000 (15:49 +0100)
committerWill Deacon <will.deacon@arm.com>
Mon, 12 Dec 2011 16:07:35 +0000 (16:07 +0000)
commita7cdb434f1d344b2283b94039e9e03bc4df92c40
tree0cf7662397eee9f2f2059c5bef8fedbdacad360a
parent21dae222ae96bb7895dfaf32abcc32042b39c1bc
ARM: stop: execute platform callback from cpu_stop code

Sending IPI_CPU_STOP to a CPU causes it to execute a busy cpu_relax
loop forever. This makes it impossible to kexec successfully on an SMP
system since the secondary CPUs do not reset.

This patch adds a callback to platform_cpu_kill, defined when
CONFIG_HOTPLUG_CPU=y, from the ipi_cpu_stop handling code. This function
currently just returns 1 on all platforms that define it but allows them
to do something more sophisticated in the future.

Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm/Kconfig
arch/arm/kernel/smp.c