All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ard Biesheuvel <ardb+git@google.com>
To: stable@vger.kernel.org
Subject: [PATCH for-stable-6.1 01/23] x86/efi: Drop EFI stub .bss from .data section
Date: Fri, 19 Apr 2024 10:11:07 +0200	[thread overview]
Message-ID: <20240419081105.3817596-26-ardb+git@google.com> (raw)
In-Reply-To: <20240419081105.3817596-25-ardb+git@google.com>

From: Ard Biesheuvel <ardb@kernel.org>

[ 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@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20230912090051.4014114-18-ardb@google.com
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 arch/x86/boot/compressed/vmlinux.lds.S | 1 -
 drivers/firmware/efi/libstub/Makefile  | 7 -------
 2 files changed, 8 deletions(-)

diff --git a/arch/x86/boot/compressed/vmlinux.lds.S b/arch/x86/boot/compressed/vmlinux.lds.S
index 112b2375d021..32892e81bf61 100644
--- a/arch/x86/boot/compressed/vmlinux.lds.S
+++ b/arch/x86/boot/compressed/vmlinux.lds.S
@@ -46,7 +46,6 @@ SECTIONS
 		_data = . ;
 		*(.data)
 		*(.data.*)
-		*(.bss.efistub)
 		_edata = . ;
 	}
 	. = ALIGN(L1_CACHE_BYTES);
diff --git a/drivers/firmware/efi/libstub/Makefile b/drivers/firmware/efi/libstub/Makefile
index 473ef18421db..748781c25787 100644
--- a/drivers/firmware/efi/libstub/Makefile
+++ b/drivers/firmware/efi/libstub/Makefile
@@ -102,13 +102,6 @@ lib-y				:= $(patsubst %.o,%.stub.o,$(lib-y))
 # 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
 
-- 
2.44.0.769.g3c40516874-goog


  reply	other threads:[~2024-04-19  8:11 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-19  8:11 [PATCH for-stable-6.1 00/23] x86/efistub backports Ard Biesheuvel
2024-04-19  8:11 ` Ard Biesheuvel [this message]
2024-04-19  8:11 ` [PATCH for-stable-6.1 02/23] x86/efi: Disregard setup header of loaded image Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 03/23] x86/efistub: Reinstate soft limit for initrd loading Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 04/23] x86/efi: Drop alignment flags from PE section headers Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 05/23] x86/boot: Remove the 'bugger off' message Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 06/23] x86/boot: Omit compression buffer from PE/COFF image memory footprint Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 07/23] x86/boot: Drop redundant code setting the root device Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 08/23] x86/boot: Drop references to startup_64 Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 09/23] x86/boot: Grab kernel_info offset from zoffset header directly Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 10/23] x86/boot: Set EFI handover offset directly in header asm Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 11/23] x86/boot: Define setup size in linker script Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 12/23] x86/boot: Derive file size from _edata symbol Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 13/23] x86/boot: Construct PE/COFF .text section from assembler Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 14/23] x86/boot: Drop PE/COFF .reloc section Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 15/23] x86/boot: Split off PE/COFF .data section Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 16/23] x86/boot: Increase section and file alignment to 4k/512 Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 17/23] x86/efistub: Use 1:1 file:memory mapping for PE/COFF .compat section Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 18/23] x86/mm: Remove P*D_PAGE_MASK and P*D_PAGE_SIZE macros Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 19/23] x86/head/64: Add missing __head annotation to startup_64_load_idt() Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 20/23] x86/head/64: Move the __head definition to <asm/init.h> Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 21/23] x86/sme: Move early SME kernel encryption handling into .head.text Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 22/23] x86/sev: Move early startup code into .head.text section Ard Biesheuvel
2024-04-19  8:11 ` [PATCH for-stable-6.1 23/23] x86/efistub: Remap kernel text read-only before dropping NX attribute Ard Biesheuvel
2024-04-19 10:47 ` [PATCH for-stable-6.1 00/23] x86/efistub backports Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240419081105.3817596-26-ardb+git@google.com \
    --to=ardb+git@google.com \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.