summaryrefslogtreecommitdiff
path: root/drivers/firmware
diff options
context:
space:
mode:
authorArd Biesheuvel <ardb@kernel.org>2024-07-04 11:03:24 +0200
committerArd Biesheuvel <ardb@kernel.org>2024-07-08 10:17:45 +0200
commitebf5a79acf9a2970e93d30a9e97b08913ef15711 (patch)
treecc03da135b0e386a378e862a42480c76069fde1e /drivers/firmware
parentfb318ca0a522295edd6d796fb987e99ec41f0ee5 (diff)
downloadlwn-ebf5a79acf9a2970e93d30a9e97b08913ef15711.tar.gz
lwn-ebf5a79acf9a2970e93d30a9e97b08913ef15711.zip
x86/efistub: Drop redundant clearing of BSS
As it turns out, clearing the BSS was not the right fix for the issue that was ultimately fixed by commit decd347c2a75 ("x86/efistub: Reinstate soft limit for initrd loading"), and given that the Windows EFI loader becomes very unhappy when entered with garbage in BSS, this is one thing that x86 PC EFI implementations can be expected to get right. So drop it from the pure PE entrypoint. The handover protocol entrypoint still needs this - it is used by the flaky distro bootloaders that barely implement PE/COFF at all. Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Diffstat (limited to 'drivers/firmware')
-rw-r--r--drivers/firmware/efi/libstub/x86-stub.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/firmware/efi/libstub/x86-stub.c b/drivers/firmware/efi/libstub/x86-stub.c
index a4d0164ba35e..1ed94b251c58 100644
--- a/drivers/firmware/efi/libstub/x86-stub.c
+++ b/drivers/firmware/efi/libstub/x86-stub.c
@@ -541,9 +541,6 @@ efi_status_t __efiapi efi_pe_entry(efi_handle_t handle,
efi_status_t status;
char *cmdline_ptr;
- if (efi_is_native())
- memset(_bss, 0, _ebss - _bss);
-
efi_system_table = sys_table_arg;
/* Check if we were booted by the EFI firmware */