diff options
Diffstat (limited to 'efi-x86-call-parse-options-from-efi-main.patch')
-rw-r--r-- | efi-x86-call-parse-options-from-efi-main.patch | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/efi-x86-call-parse-options-from-efi-main.patch b/efi-x86-call-parse-options-from-efi-main.patch deleted file mode 100644 index a1a3a34d4..000000000 --- a/efi-x86-call-parse-options-from-efi-main.patch +++ /dev/null @@ -1,58 +0,0 @@ -From ecb77f61f10b36476133e31cdc001892b5463b90 Mon Sep 17 00:00:00 2001 -From: Hans de Goede <hdegoede@redhat.com> -Date: Wed, 12 Sep 2018 20:32:05 +0200 -Subject: efi/x86: Call efi_parse_options() from efi_main() - -Before this commit we were only calling efi_parse_options() from -make_boot_params(), but make_boot_params() only gets called if the -kernel gets booted directly as an EFI executable. So when booted through -e.g. grub we ended up not parsing the commandline in the boot code. - -This makes the drivers/firmware/efi/libstub code ignore the "quiet" -commandline argument resulting in the following message being printed: -"EFI stub: UEFI Secure Boot is enabled." - -Despite the quiet request. This commits adds an extra call to -efi_parse_options() to efi_main() to make sure that the options are -always processed. This fixes quiet not working. - -This also fixes the libstub code ignoring nokaslr and efi=nochunk. - -Reported-by: Peter Robinson <pbrobinson@redhat.com> -Signed-off-by: Hans de Goede <hdegoede@redhat.com> -Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> ---- - arch/x86/boot/compressed/eboot.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c -index 1458b1700fc7..8b4c5e001157 100644 ---- a/arch/x86/boot/compressed/eboot.c -+++ b/arch/x86/boot/compressed/eboot.c -@@ -738,6 +738,7 @@ efi_main(struct efi_config *c, struct boot_params *boot_params) - struct desc_struct *desc; - void *handle; - efi_system_table_t *_table; -+ unsigned long cmdline_paddr; - - efi_early = c; - -@@ -755,6 +756,15 @@ efi_main(struct efi_config *c, struct boot_params *boot_params) - else - setup_boot_services32(efi_early); - -+ /* -+ * make_boot_params() may have been called before efi_main(), in which -+ * case this is the second time we parse the cmdline. This is ok, -+ * parsing the cmdline multiple times does not have side-effects. -+ */ -+ cmdline_paddr = ((u64)hdr->cmd_line_ptr | -+ ((u64)boot_params->ext_cmd_line_ptr << 32)); -+ efi_parse_options((char *)cmdline_paddr); -+ - /* - * If the boot loader gave us a value for secure_boot then we use that, - * otherwise we ask the BIOS. --- -cgit 1.2-0.3.lf.el7 - |