This is a note to let you know that I've just added the patch titled x86/efi: Drop EFI stub .bss from .data section to the 6.6-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: x86-efi-drop-efi-stub-.bss-from-.data-section.patch and it can be found in the queue-6.6 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 5f51c5d0e905608ba7be126737f7c84a793ae1aa Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel <ardb@xxxxxxxxxx> Date: Tue, 12 Sep 2023 09:00:52 +0000 Subject: x86/efi: Drop EFI stub .bss from .data section From: Ard Biesheuvel <ardb@xxxxxxxxxx> commit 5f51c5d0e905608ba7be126737f7c84a793ae1aa upstream. Now that the EFI stub always zero inits its BSS section upon entry, there is no longer a need to place the BSS symbols carried by the stub into the .data section. Signed-off-by: Ard Biesheuvel <ardb@xxxxxxxxxx> Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx> Link: https://lore.kernel.org/r/20230912090051.4014114-18-ardb@xxxxxxxxxx Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- arch/x86/boot/compressed/vmlinux.lds.S | 1 - drivers/firmware/efi/libstub/Makefile | 7 ------- 2 files changed, 8 deletions(-) --- a/arch/x86/boot/compressed/vmlinux.lds.S +++ b/arch/x86/boot/compressed/vmlinux.lds.S @@ -47,7 +47,6 @@ SECTIONS _data = . ; *(.data) *(.data.*) - *(.bss.efistub) _edata = . ; } . = ALIGN(L1_CACHE_BYTES); --- a/drivers/firmware/efi/libstub/Makefile +++ b/drivers/firmware/efi/libstub/Makefile @@ -108,13 +108,6 @@ lib-y := $(patsubst %.o,%.stub.o,$(li # https://bugs.llvm.org/show_bug.cgi?id=46480 STUBCOPY_FLAGS-y += --remove-section=.note.gnu.property -# -# For x86, bootloaders like systemd-boot or grub-efi do not zero-initialize the -# .bss section, so the .bss section of the EFI stub needs to be included in the -# .data section of the compressed kernel to ensure initialization. Rename the -# .bss section here so it's easy to pick out in the linker script. -# -STUBCOPY_FLAGS-$(CONFIG_X86) += --rename-section .bss=.bss.efistub,load,alloc STUBCOPY_RELOC-$(CONFIG_X86_32) := R_386_32 STUBCOPY_RELOC-$(CONFIG_X86_64) := R_X86_64_64 Patches currently in stable-queue which might be from ardb@xxxxxxxxxx are queue-6.6/x86-boot-increase-section-and-file-alignment-to-4k-512.patch queue-6.6/x86-boot-derive-file-size-from-_edata-symbol.patch queue-6.6/x86-boot-construct-pe-coff-.text-section-from-assembler.patch queue-6.6/x86-boot-split-off-pe-coff-.data-section.patch queue-6.6/kallsyms-ignore-armv4-thunks-along-with-others.patch queue-6.6/x86-efi-drop-alignment-flags-from-pe-section-headers.patch queue-6.6/x86-boot-drop-references-to-startup_64.patch queue-6.6/x86-efistub-use-1-1-file-memory-mapping-for-pe-coff-.compat-section.patch queue-6.6/x86-boot-drop-pe-coff-.reloc-section.patch queue-6.6/x86-boot-set-efi-handover-offset-directly-in-header-asm.patch queue-6.6/x86-efi-drop-efi-stub-.bss-from-.data-section.patch queue-6.6/x86-efi-disregard-setup-header-of-loaded-image.patch queue-6.6/x86-boot-grab-kernel_info-offset-from-zoffset-header-directly.patch queue-6.6/x86-boot-drop-redundant-code-setting-the-root-device.patch queue-6.6/x86-boot-remove-the-bugger-off-message.patch queue-6.6/x86-boot-omit-compression-buffer-from-pe-coff-image-memory-footprint.patch queue-6.6/x86-boot-define-setup-size-in-linker-script.patch