summaryrefslogtreecommitdiffstats
path: root/src/boot/efi/stub.c
diff options
context:
space:
mode:
authorMax Resch <resch.max@gmail.com>2021-09-30 18:43:52 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-10-11 14:40:49 +0200
commita6089431d52adda93eec251a3df0dffa1fe0661a (patch)
treed2b8ff71a3b534ea9333ef2b5c896ab0758d4295 /src/boot/efi/stub.c
parentMerge pull request #20979 from poettering/ac-power-tweak (diff)
downloadsystemd-a6089431d52adda93eec251a3df0dffa1fe0661a.tar.xz
systemd-a6089431d52adda93eec251a3df0dffa1fe0661a.zip
sd-stub: Provide initrd with LINUX_EFI_INITRD_MEDIA_GUID
Register a LINUX_EFI_INITRD_MEDIA_GUID DevicePath with a LoadFile2Protocol interface and serve the initrd to a supported Linux kernel (Version 5.8+) Leave the x86 code for older kernels in place until supported kernels become more mainstream
Diffstat (limited to '')
-rw-r--r--src/boot/efi/stub.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/boot/efi/stub.c b/src/boot/efi/stub.c
index dad0f61335..00876337d2 100644
--- a/src/boot/efi/stub.c
+++ b/src/boot/efi/stub.c
@@ -249,7 +249,9 @@ EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *sys_table) {
}
}
- err = linux_exec(image, cmdline, cmdline_len, linux_base, initrd_base, initrd_size);
+ err = linux_exec(image, cmdline, cmdline_len,
+ PHYSICAL_ADDRESS_TO_POINTER(linux_base),
+ PHYSICAL_ADDRESS_TO_POINTER(initrd_base), initrd_size);
graphics_mode(FALSE);
return log_error_status_stall(err, L"Execution of embedded linux image failed: %r", err);
}