ARM: Check if a CPU has gone offline
authorAshwin Chaugule <ashwin.chaugule@linaro.org>
Wed, 7 May 2014 14:18:36 +0000 (10:18 -0400)
committerMark Brown <broonie@kernel.org>
Thu, 23 Oct 2014 19:08:39 +0000 (20:08 +0100)
commit24629f96c1506bed9c5abecf73e2edb8e79ab379
tree3e1db0ea528b05a5b86490a0e198f8b3c5361fd3
parent6a0d4de350b1a37e6d67b2d8bae030886d291c4a
ARM: Check if a CPU has gone offline

PSCIv0.2 adds a new function called AFFINITY_INFO, which
can be used to query if a specified CPU has actually gone
offline. Calling this function via cpu_kill ensures that
a CPU has quiesced after a call to cpu_die. This helps
prevent the CPU from doing arbitrary bad things when data
or instructions are clobbered (as happens with kexec)
in the window between a CPU announcing that it is dead
and said CPU leaving the kernel.

Signed-off-by: Ashwin Chaugule <ashwin.chaugule@linaro.org>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit c814ca029e1015bb0ecec312f4bb9751ba1a711a)
Signed-off-by: Mark Brown <broonie@kernel.org>
Conflicts:
arch/arm64/include/asm/cpu_ops.h
arch/arm/kernel/psci_smp.c
arch/arm64/include/asm/cpu_ops.h
arch/arm64/kernel/psci.c
arch/arm64/kernel/smp.c