status.type = type;
status.backlog = false;
+ status.boot_active = type == STATUS_INFO;
pb_debug("boot status: [%d] %s\n", type, status.message);
struct process *process;
char *s_initrd = NULL;
char *s_args = NULL;
- const char *argv[7];
+ const char *argv[8];
char *s_dtb = NULL;
const char **p;
int result;
*p++ = pb_system_apps.kexec; /* 1 */
*p++ = "-l"; /* 2 */
+ if (pb_log_get_debug()) {
+ *p++ = "--debug"; /* 3 */
+ }
+
if (local_initrd) {
s_initrd = talloc_asprintf(boot_task, "--initrd=%s",
local_initrd);
assert(s_initrd);
- *p++ = s_initrd; /* 3 */
+ *p++ = s_initrd; /* 4 */
}
if (local_dtb) {
s_dtb = talloc_asprintf(boot_task, "--dtb=%s",
local_dtb);
assert(s_dtb);
- *p++ = s_dtb; /* 4 */
+ *p++ = s_dtb; /* 5 */
}
s_args = talloc_asprintf(boot_task, "--append=%s",
boot_task->args ?: "\"\"");
assert(s_args);
- *p++ = s_args; /* 5 */
+ *p++ = s_args; /* 6 */
- *p++ = local_image; /* 6 */
- *p++ = NULL; /* 7 */
+ *p++ = local_image; /* 7 */
+ *p++ = NULL; /* 8 */
result = process_run_sync(process);
if (result) {
image = opt->boot_image->url;
} else {
pb_log_fn("no image specified\n");
- update_status(status_fn, status_arg, STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_ERROR,
_("Boot failed: no image specified"));
return NULL;
}
} else {
pb_log("%s: no command line signature file"
" specified\n", __func__);
- update_status(status_fn, status_arg, STATUS_INFO,
+ update_status(status_fn, status_arg, STATUS_ERROR,
_("Boot failed: no command line"
" signature file specified"));
talloc_free(boot_task);
{
task->cancelled = true;
- update_status(task->status_fn, task->status_arg, STATUS_INFO,
+ update_status(task->status_fn, task->status_arg, STATUS_ERROR,
_("Boot cancelled"));
cleanup_cancellations(task, NULL);