1
0
mirror of https://github.com/systemd/systemd.git synced 2024-10-27 18:55:40 +03:00

stub: move initialization of kernel iovec to the end, where it's used

This commit is contained in:
Lennart Poettering 2024-06-26 10:37:29 +02:00
parent 8e67de8402
commit c802cb2f80

View File

@ -945,11 +945,6 @@ static EFI_STATUS run(EFI_HANDLE image) {
(void) efivar_set_uint_string(MAKE_GUID_PTR(LOADER), u"StubPcrInitRDConfExts", TPM2_PCR_KERNEL_CONFIG, 0);
generate_embedded_initrds(loaded_image, sections, initrds);
struct iovec kernel = IOVEC_MAKE(
(const uint8_t*) loaded_image->ImageBase + sections[UNIFIED_SECTION_LINUX].memory_offset,
sections[UNIFIED_SECTION_LINUX].size);
lookup_embedded_initrds(loaded_image, sections, initrds);
_cleanup_pages_ Pages initrd_pages = {};
@ -968,6 +963,10 @@ static EFI_STATUS run(EFI_HANDLE image) {
} else
final_initrd = initrds[INITRD_BASE];
struct iovec kernel = IOVEC_MAKE(
(const uint8_t*) loaded_image->ImageBase + sections[UNIFIED_SECTION_LINUX].memory_offset,
sections[UNIFIED_SECTION_LINUX].size);
err = linux_exec(image, cmdline,
kernel.iov_base, kernel.iov_len,
final_initrd.iov_base, final_initrd.iov_len);