summaryrefslogtreecommitdiffstats
path: root/discover/boot.c
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2016-12-07 11:13:36 +1100
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-12-20 15:04:07 +1100
commit4b06a4645e19830581505a675075773adc0857c2 (patch)
tree94d77cc95f94432277e401763c65d3d7cbcc37d8 /discover/boot.c
parentea8bd5f424a9b01c71e1694bb5b6ffc13e3da4f5 (diff)
downloadtalos-petitboot-4b06a4645e19830581505a675075773adc0857c2.tar.gz
talos-petitboot-4b06a4645e19830581505a675075773adc0857c2.zip
types: shorten boot_status definitions
struct boot_status is a bit misnamed; we report status on things that aren't just the boot status (eg, discovery). This change refactors struct boot_status into just struct status. We give the type enum a name, and shorten the enum values to suit. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Diffstat (limited to 'discover/boot.c')
-rw-r--r--discover/boot.c33
1 files changed, 15 insertions, 18 deletions
diff --git a/discover/boot.c b/discover/boot.c
index dc6da7d..70e9d41 100644
--- a/discover/boot.c
+++ b/discover/boot.c
@@ -146,7 +146,7 @@ static int kexec_reboot(struct boot_task *task)
static void __attribute__((format(__printf__, 4, 5))) update_status(
boot_status_fn fn, void *arg, int type, char *fmt, ...)
{
- struct boot_status status;
+ struct status status;
va_list ap;
va_start(ap, fmt);
@@ -252,7 +252,7 @@ static void run_boot_hooks(struct boot_task *task)
if (n < 1)
return;
- update_status(task->status_fn, task->status_arg, BOOT_STATUS_INFO,
+ update_status(task->status_fn, task->status_arg, STATUS_INFO,
_("running boot hooks"));
boot_hook_setenv(task);
@@ -315,7 +315,7 @@ static int check_load(struct boot_task *task, const char *name,
return 0;
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("Couldn't load %s"), name);
return -1;
}
@@ -443,28 +443,27 @@ static void boot_process(struct load_url_result *result, void *data)
run_boot_hooks(task);
- update_status(task->status_fn, task->status_arg, BOOT_STATUS_INFO,
+ update_status(task->status_fn, task->status_arg, STATUS_INFO,
_("performing kexec_load"));
rc = kexec_load(task);
if (rc == KEXEC_LOAD_DECRYPTION_FALURE) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR, _("decryption failed"));
+ STATUS_ERROR, _("decryption failed"));
}
else if (rc == KEXEC_LOAD_SIGNATURE_FAILURE) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("signature verification failed"));
}
else if (rc == KEXEC_LOAD_SIG_SETUP_INVALID) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("invalid signature configuration"));
}
else if (rc) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
- _("kexec load failed"));
+ STATUS_ERROR, _("kexec load failed"));
}
no_sig_load:
@@ -482,13 +481,12 @@ no_load:
if (!rc) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_INFO,
- _("performing kexec reboot"));
+ STATUS_INFO, _("performing kexec reboot"));
rc = kexec_reboot(task);
if (rc) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
+ STATUS_ERROR,
_("kexec reboot failed"));
}
}
@@ -503,8 +501,7 @@ static int start_url_load(struct boot_task *task, const char *name,
*result = load_url_async(task, url, boot_process, task);
if (!*result) {
update_status(task->status_fn, task->status_arg,
- BOOT_STATUS_ERROR,
- _("Error loading %s"), name);
+ STATUS_ERROR, _("Error loading %s"), name);
return -1;
}
return 0;
@@ -530,7 +527,7 @@ struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
else
boot_desc = _("(unknown)");
- update_status(status_fn, status_arg, BOOT_STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_INFO,
_("Booting %s."), boot_desc);
if (cmd && cmd->boot_image_file) {
@@ -539,7 +536,7 @@ struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
image = opt->boot_image->url;
} else {
pb_log("%s: no image specified\n", __func__);
- update_status(status_fn, status_arg, BOOT_STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_INFO,
_("Boot failed: no image specified"));
return NULL;
}
@@ -587,7 +584,7 @@ struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
} else {
pb_log("%s: no command line signature file"
" specified\n", __func__);
- update_status(status_fn, status_arg, BOOT_STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_INFO,
_("Boot failed: no command line"
" signature file specified"));
talloc_free(boot_task);
@@ -643,7 +640,7 @@ void boot_cancel(struct boot_task *task)
{
task->cancelled = true;
- update_status(task->status_fn, task->status_arg, BOOT_STATUS_INFO,
+ update_status(task->status_fn, task->status_arg, STATUS_INFO,
_("Boot cancelled"));
cleanup_cancellations(task, NULL);
OpenPOWER on IntegriCloud