arm64: kdump: implement machine_crash_shutdown()
authorAKASHI Takahiro <takahiro.akashi@linaro.org>
Mon, 3 Apr 2017 02:24:36 +0000 (11:24 +0900)
committerAKASHI Takahiro <takahiro.akashi@linaro.org>
Mon, 19 Jun 2017 06:09:05 +0000 (15:09 +0900)
commitce45ba16b944b8114e370fd7cd416aa355c0d0e1
tree30c6eb4a69d08b375742924e8720ec277ba4f23e
parent76d3453b6bd9c1b09deb1cfb4611781356fe050c
arm64: kdump: implement machine_crash_shutdown()

Primary kernel calls machine_crash_shutdown() to shut down non-boot cpus
and save registers' status in per-cpu ELF notes before starting crash
dump kernel. See kernel_kexec().
Even if not all secondary cpus have shut down, we do kdump anyway.

As we don't have to make non-boot(crashed) cpus offline (to preserve
correct status of cpus at crash dump) before shutting down, this patch
also adds a variant of smp_send_stop().

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: James Morse <james.morse@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/include/asm/hardirq.h
arch/arm64/include/asm/kexec.h
arch/arm64/include/asm/smp.h
arch/arm64/kernel/machine_kexec.c
arch/arm64/kernel/smp.c