Skip to content

Commit 6343142

Browse files
authored
fix(dell): clear pending job queue before staging boot-order change (#105)
set_boot_order_dpu_first PATCHed .../Settings without first clearing the job queue, unlike the sibling config writers (machine_setup, setup_serial_console, clear_tpm, change_uefi_password). On Dell, a committed-but-unapplied pending config makes the PATCH fail with SYS011 ("pending configuration values are already committed"), which wedged the machine-controller SetBootOrder loop indefinitely. Clear the queue immediately before the PATCH (after the already-first no-op check) so a stale pending config no longer blocks the boot-order set.
1 parent 6728148 commit 6343142

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

src/dell.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1142,6 +1142,14 @@ impl Redfish for Bmc {
11421142
return Ok(None);
11431143
}
11441144

1145+
// Clear any committed-but-unapplied pending config first, as
1146+
// the sibling BIOS-config writers do (machine_setup,
1147+
// setup_serial_console, clear_tpm, change_uefi_password): on
1148+
// Dell a staged pending config makes this PATCH fail with
1149+
// SYS011 ("pending configuration values are already
1150+
// committed").
1151+
self.delete_job_queue().await?;
1152+
11451153
let url = format!("Systems/{}/Settings", self.s.system_id());
11461154
let body = HashMap::from([(
11471155
"Boot",

0 commit comments

Comments
 (0)