summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-04-13 15:07:38 +1000
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-04-13 15:54:07 +1000
commit8569abdf356aa617ebdcb426aa708a0fd8129a1a (patch)
tree8310247f15068626e268c62261ab5e4f90c313ec
parent0739476294f6925b01ad12b1b198f85b41bc657d (diff)
downloadtalos-petitboot-8569abdf356aa617ebdcb426aa708a0fd8129a1a.tar.gz
talos-petitboot-8569abdf356aa617ebdcb426aa708a0fd8129a1a.zip
discover: Perform pre-boot steps when timeout expires
When a default boot timeout expires boot() is called via default_timeout() rather than device_handler_boot(). default_timeout() doesn't call platform_pre_boot() beforehand, which means steps such as clearing a temporary boot device override are skipped. Add a call to platform_pre_boot() immediately before boot() to ensure these steps are performed regardless of boot type. Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
-rw-r--r--discover/device-handler.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/discover/device-handler.c b/discover/device-handler.c
index 489ecd7..43b9541 100644
--- a/discover/device-handler.c
+++ b/discover/device-handler.c
@@ -445,6 +445,8 @@ static int default_timeout(void *arg)
pb_log("Timeout expired, booting default option %s\n", opt->option->id);
+ platform_pre_boot();
+
handler->pending_boot = boot(handler, handler->default_boot_option,
NULL, handler->dry_run, boot_status, handler);
handler->pending_boot_is_default = true;
OpenPOWER on IntegriCloud