[PATCH 19/19] arm64: kdump: relax BUG_ON() if more than one cpus are still active

Geoff Levand geoff at infradead.org
Fri Jan 15 11:18:38 PST 2016


From: AKASHI Takahiro <takahiro.akashi at linaro.org>

We should try best in case of kdump.
So even if not all secondary cpus have shut down, we do kdump anyway.

Signed-off-by: AKASHI Takahiro <takahiro.akashi at linaro.org>
---
 arch/arm64/kernel/machine_kexec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/machine_kexec.c b/arch/arm64/kernel/machine_kexec.c
index 0ba2ae4..3230551 100644
--- a/arch/arm64/kernel/machine_kexec.c
+++ b/arch/arm64/kernel/machine_kexec.c
@@ -157,7 +157,7 @@ void machine_kexec(struct kimage *kimage)
 	phys_addr_t reboot_code_buffer_phys;
 	void *reboot_code_buffer;
 
-	BUG_ON(num_online_cpus() > 1);
+	BUG_ON((num_online_cpus() > 1) && !WARN_ON(in_crash_kexec));
 
 	reboot_code_buffer_phys = page_to_phys(kimage->control_code_page);
 	reboot_code_buffer = kmap(kimage->control_code_page);
-- 
2.5.0




More information about the linux-arm-kernel mailing list