Skip to content

fix(boot): fix bugs found in a review of the bootloader - #124

Merged
azenla merged 5 commits into
mainfrom
azenla/fix/bug-hunt
Oct 5, 2026
Merged

azenla merged 5 commits into
mainfrom
azenla/fix/bug-hunt

Conversation

@azenla

@azenla azenla commented Oct 4, 2026

Copy link
Copy Markdown
Member

A review of the bootloader turned up five bugs, each fixed in its own commit.

  • Command-line arguments lost their backslashes, so --config=\path\to\config.toml loaded the wrong path. The splitter now keeps them, and the shlex dependency is gone.
  • A unified kernel image with a boot counter was renamed before it was chainloaded, so it was loaded by its old name and failed. It is now booted by its renamed file.
  • A one-shot entry was dropped when the menu was forced outside strict mode. It now stays the default.
  • Actions of generated entries were stamped before variants and entry values were applied, so those values could not override global ones. They are now stamped when the entry is booted.
  • Values that refer to other values were left unresolved in paths such as bls.path and driver paths. Stamping now repeats until the text settles, within the existing limits.

Builds and clippy pass on both targets, and the bls and parsing tests pass. I have not booted these changes in QEMU.

Not fixed here: the version comparison of 1.0 against 1.a (an existing test pins the current result), the graphical menu countdown that stalls on spurious firmware wakes, and a few cosmetic or edge-case issues.

@azenla
azenla merged commit 98f0298 into main Oct 5, 2026
12 checks passed
@azenla
azenla deleted the azenla/fix/bug-hunt branch October 5, 2026 00:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant