[kernel] bluescreen only on panic in platform_halt()
we don't want to generate a kernel crash log on other reasons than a panic
ZX-2476
TESTED=assert(false) in devmgr's main() no longer generates a crash report
Change-Id: I4eb91be4230d163369731183262c5210af01dbea
diff --git a/kernel/platform/generic-arm/platform.cpp b/kernel/platform/generic-arm/platform.cpp
index e593b8f..a078be2 100644
--- a/kernel/platform/generic-arm/platform.cpp
+++ b/kernel/platform/generic-arm/platform.cpp
@@ -471,12 +471,11 @@
power_shutdown();
}
-#if WITH_LIB_DEBUGLOG
- thread_print_current_backtrace();
- dlog_bluescreen_halt();
-#endif
-
if (reason == HALT_REASON_SW_PANIC) {
+#if WITH_LIB_DEBUGLOG
+ thread_print_current_backtrace();
+ dlog_bluescreen_halt();
+#endif
if (!halt_on_panic) {
power_reboot(REBOOT_NORMAL);
printf("reboot failed\n");
diff --git a/kernel/platform/pc/power.cpp b/kernel/platform/pc/power.cpp
index f379b28..e2a2de5 100644
--- a/kernel/platform/pc/power.cpp
+++ b/kernel/platform/pc/power.cpp
@@ -117,10 +117,12 @@
break;
}
+ if (reason == HALT_REASON_SW_PANIC) {
#if WITH_LIB_DEBUGLOG
- thread_print_current_backtrace();
- dlog_bluescreen_halt();
+ thread_print_current_backtrace();
+ dlog_bluescreen_halt();
#endif
+ }
if (!halt_on_panic) {
printf("Rebooting...\n");