summaryrefslogtreecommitdiffstats
path: root/arch/arm64/include/asm/smp.h
diff options
context:
space:
mode:
authorAKASHI Takahiro2017-04-03 04:24:36 +0200
committerCatalin Marinas2017-04-05 19:29:15 +0200
commit78fd584cdec0518075cf3aa75e5ec491cc8f3ff3 (patch)
treed92cf21d8427748917af0fcb53184c5ad23ddd1b /arch/arm64/include/asm/smp.h
parentarm64: hibernate: preserve kdump image around hibernation (diff)
downloadkernel-qcow2-linux-78fd584cdec0518075cf3aa75e5ec491cc8f3ff3.tar.gz
kernel-qcow2-linux-78fd584cdec0518075cf3aa75e5ec491cc8f3ff3.tar.xz
kernel-qcow2-linux-78fd584cdec0518075cf3aa75e5ec491cc8f3ff3.zip
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>
Diffstat (limited to 'arch/arm64/include/asm/smp.h')
-rw-r--r--arch/arm64/include/asm/smp.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/smp.h b/arch/arm64/include/asm/smp.h
index d050d720a1b4..55f08c5acfad 100644
--- a/arch/arm64/include/asm/smp.h
+++ b/arch/arm64/include/asm/smp.h
@@ -148,6 +148,9 @@ static inline void cpu_panic_kernel(void)
*/
bool cpus_are_stuck_in_kernel(void);
+extern void smp_send_crash_stop(void);
+extern bool smp_crash_stop_failed(void);
+
#endif /* ifndef __ASSEMBLY__ */
#endif /* ifndef __ASM_SMP_H */