kexec-iso-init: improve hybrid ISO detection and boot param handling#2083
Draft
tlaurion wants to merge 3 commits intolinuxboot:masterfrom
Draft
kexec-iso-init: improve hybrid ISO detection and boot param handling#2083tlaurion wants to merge 3 commits intolinuxboot:masterfrom
tlaurion wants to merge 3 commits intolinuxboot:masterfrom
Conversation
There was a problem hiding this comment.
Pull request overview
Adds ISO-on-USB boot compatibility detection and improved UX/logging around kexec-based booting, including documentation of supported ISO behaviors.
Changes:
- Add initrd/GRUB scanning and USB filesystem compatibility checks for ISO-file boot, with user warnings on likely failures.
- Improve boot option selection UX and display of applied kernel parameter add/remove operations.
- Log the final kernel command line in debug output and document the ISO boot flow + compatibility matrix.
Reviewed changes
Copilot reviewed 1 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| initrd/bin/kexec-select-boot.sh | Simplifies menu display and improves confirmation/add/remove parameter UX. |
| initrd/bin/kexec-iso-init.sh | Adds ISO boot-method detection, USB FS probing, initrd capability heuristics, and broader distro parameter support. |
| initrd/bin/kexec-boot.sh | Refactors option parsing and adds debug logging of the final kernel cmdline. |
| doc/boot-process.md | Documents “Stage 2b” ISO-on-USB boot flow and known compatibility results. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
b4b1383 to
cb30626
Compare
d810864 to
d5b268c
Compare
29fb8da to
ab2fc17
Compare
ab2fc17 to
8f78967
Compare
- Add check_hybrid_iso() using MBR signature at offset 510 (0x55AA) - Add detect_iso_boot_method() to extract boot params from initrd via strings - Add inspect_iso_boot_config() to extract boot params from GRUB configs - Simplify header to document Dracut vs Anaconda boot methods - Use DEBUG level for NOTE/WARN/STATUS spam per logging.md - Change terminal prompts to [Y,d] style with Enter defaulting to yes - Remove Anaconda blocking - let user attempt boot (Qubes R4.3 works) - Keep combined boot params approach (let ISO initrd pick what it needs) Tested with Qubes R4.3 on Q35 QEMU (works). Ref: linuxboot#2083, linuxboot#2008
tlaurion
added a commit
to tlaurion/heads
that referenced
this pull request
Apr 13, 2026
Add resolve_grub_vars() to substitute GRUB variables like ${iso_path}
and ${isofile} with the actual ISO path when extracting boot params
from GRUB configs.
Fixes boot failure where iso-scan/filename=${iso_path} wasn't being
resolved to the actual ISO path.
Ref: linuxboot#2083
Add resolve_grub_vars() to substitute GRUB variables like ${iso_path}
and ${isofile} with the actual ISO path when extracting boot params
from GRUB configs.
Fixes boot failure where iso-scan/filename=${iso_path} wasn't being
resolved to the actual ISO path.
Ref: linuxboot#2083
90f3faf to
16b9805
Compare
Add TRACE/DEBUG to understand how boot parameters flow through kexec-boot.sh, especially the cmdline and cmdadd parameters. Ref: linuxboot#2083
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
check_hybrid_iso()using MBR signature at offset 510 (0x55AA)detect_iso_boot_method()to extract boot params from initrd via stringsinspect_iso_boot_config()to extract boot params from GRUB configsresolve_grub_vars()to substitute GRUB variables like${iso_path}with actual ISO pathTesting
Related