summaryrefslogtreecommitdiffstats
path: root/core/fast-reboot.c
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2017-11-29 15:37:03 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2017-12-03 22:10:56 -0600
commit4cfd44c463e28bffb9dfc1a8987c10c969d032f2 (patch)
tree0ce10bedd21be4f2a3bf667487012ac35f7553b8 /core/fast-reboot.c
parent688c0d51e6e9773e7ad47eb4f6ce71ea032c671d (diff)
downloadtalos-skiboot-4cfd44c463e28bffb9dfc1a8987c10c969d032f2.tar.gz
talos-skiboot-4cfd44c463e28bffb9dfc1a8987c10c969d032f2.zip
fast-reboot: improve failure error messages
Change existing failure error messages to PR_NOTICE so they get printed to the console, and add some new ones. It's not a more severe class because it falls back to IPL on failure. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core/fast-reboot.c')
-rw-r--r--core/fast-reboot.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/core/fast-reboot.c b/core/fast-reboot.c
index 949a1064..2547e908 100644
--- a/core/fast-reboot.c
+++ b/core/fast-reboot.c
@@ -92,7 +92,8 @@ void fast_reboot(void)
* Ensure all other CPUs have left OPAL calls.
*/
if (!opal_quiesce(QUIESCE_HOLD, -1)) {
- prlog(PR_DEBUG, "RESET: Fast reboot disabled because OPAL quiesce timed out\n");
+ prlog(PR_NOTICE, "RESET: Fast reboot disabled because OPAL "
+ "quiesce timed out\n");
return;
}
@@ -104,6 +105,7 @@ void fast_reboot(void)
}
prlog(PR_NOTICE, "RESET: Initiating fast reboot %d...\n", ++fast_reboot_count);
+
free(fdt);
fast_boot_release = false;
@@ -111,6 +113,8 @@ void fast_reboot(void)
/* Put everybody in stop except myself */
if (sreset_all_prepare()) {
+ prlog(PR_NOTICE, "RESET: Fast reboot failed to prepare "
+ "secondaries for system reset\n");
opal_quiesce(QUIESCE_RESUME, -1);
return;
}
@@ -133,12 +137,18 @@ void fast_reboot(void)
setup_reset_vector();
/* Send everyone else to 0x100 */
- if (sreset_all_others() != OPAL_SUCCESS)
+ if (sreset_all_others() != OPAL_SUCCESS) {
+ prlog(PR_NOTICE, "RESET: Fast reboot failed to system reset "
+ "secondaries\n");
return;
+ }
/* Ensure all the sresets get through */
- if (!cpu_state_wait_all_others(cpu_state_present, msecs_to_tb(100)))
+ if (!cpu_state_wait_all_others(cpu_state_present, msecs_to_tb(100))) {
+ prlog(PR_NOTICE, "RESET: Fast reboot timed out waiting for "
+ "secondaries to call in\n");
return;
+ }
prlog(PR_DEBUG, "RESET: Releasing special wakeups...\n");
sreset_all_finish();
OpenPOWER on IntegriCloud