kexec: support multiple initrd files via concatenation#178
Open
hansbogert wants to merge 1 commit intotinkerbell:mainfrom
Open
kexec: support multiple initrd files via concatenation#178hansbogert wants to merge 1 commit intotinkerbell:mainfrom
hansbogert wants to merge 1 commit intotinkerbell:mainfrom
Conversation
Ubuntu 24.04 images ship three separate initrd archives on one initrd line (microcode.initrd, initrd, kernel-modules.initrd). grub.go now collects all paths from an initrd directive into []string instead of only the first. kexec.go concatenates them into a single temp file before passing to KexecFileLoad; the temp file is reopened read-only to avoid ETXTBSY. Signed-off-by: Hans van den Bogert <hansbogert@gmail.com>
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.
Ubuntu 24.04 images ship three separate initrd archives on one initrd line (microcode.initrd, initrd, kernel-modules.initrd). grub.go now collects all paths from an initrd directive into []string instead of only the first. kexec.go concatenates them into a single temp file before passing to KexecFileLoad; the temp file is reopened read-only to avoid ETXTBSY.
Description
Fixes: failed booting when using latest ubuntu 24.04 images which can have multiple initrds.
How Has This Been Tested?
End-to-end using the quickstart, but with iamt hardware and the ubuntu 24.04 images provided by the tinkerbell project
How are existing users impacted? What migration steps/scripts do we need?
No expected migrations needed
Checklist:
I have: