diff options
author | Ard Biesheuvel <ardb@kernel.org> | 2024-07-04 11:03:24 +0200 |
---|---|---|
committer | Ard Biesheuvel <ardb@kernel.org> | 2024-07-08 10:17:45 +0200 |
commit | ebf5a79acf9a2970e93d30a9e97b08913ef15711 (patch) | |
tree | cc03da135b0e386a378e862a42480c76069fde1e /drivers/firmware | |
parent | fb318ca0a522295edd6d796fb987e99ec41f0ee5 (diff) | |
download | lwn-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.c | 3 |
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 */ |