[PATCH v2 0/4] Add pmem node for preserving distro ISO's
Sughosh Ganu
sughosh.ganu at linaro.org
Tue Dec 3 17:36:01 CET 2024
When installing a distro via EFI HTTP boot some OS installers expect
the .iso image to be preserved and treat it as a "CDROM" to install
packages.
This is problematic in EFI, since U-Boot mounts the image, starts the
installer, and eventually calls ExitBootServices. At that point the
image U-Boot mounted disappears. Some distros don't care and download
the missing packages from a web archive, while others halt the
installation complaining they can't find certain packages.
If the firmware uses ACPI, this is supported by using NFIT which
provides NVDIMM ramdisks to the OS and preserves the image.
We don't have anything in place for Device Trees though. Since DT
supports persistent memory nodes (pmem) use those and preserve the
.iso for installers.
The issue can be reproduced by attempting an EFI HTTP boot with Ubuntu
live server ISO, or a Rocky Linux ISO. The installation would fail
with the failure to locate certain packages.
Changes since V1:
* s/ommit/remove in the commit message
* s/rfom/from in the commit message
* Add a period at the end of the sentence in the commit message
* Use log_err() to print the error message in image_setup_libfdt()
* Remove "ERROR:" from the error print in image_setup_libfdt()
Ilias Apalodimas (2):
efi_loader: add a function to remove memory from the EFI map
efi_loader: preserve installer images in pmem
Masahisa Kojima (1):
fdt: add support for adding pmem nodes
Sughosh Ganu (1):
efi: add helper functions to insert pmem node for DT fixup
boot/fdt_support.c | 41 +++++++++++++++++++++++++++--
boot/image-fdt.c | 9 +++++++
include/efi_loader.h | 28 +++++++++++++++++---
include/fdt_support.h | 13 +++++++++
lib/efi_loader/efi_bootmgr.c | 43 ++++++++++++++++++++++++++----
lib/efi_loader/efi_helper.c | 12 +++++++++
lib/efi_loader/efi_memory.c | 51 +++++++++++++++++++++++++++---------
lib/lmb.c | 4 +--
8 files changed, 175 insertions(+), 26 deletions(-)
--
2.34.1
More information about the U-Boot
mailing list