From 32ea2abe3b32ca5c649b98926b7b3e00c398036e Mon Sep 17 00:00:00 2001 From: Yi Chou Date: Sat, 18 Nov 2023 12:12:01 +0800 Subject: libpayload: Fix the stack and data labels We should make sure _stack/_estack and the other labels are consistent. And _data & _edata is also useful to clean up the sensitive data on the data section. BUG=b:248610274 TEST=emerge-cherry libpayload BRANCH=none Cq-Depend: chromium:5052462 Change-Id: I589040f4db60b35813ea9f4ba9503244bd7def00 Signed-off-by: Yi Chou Reviewed-on: https://review.coreboot.org/c/coreboot/+/79144 Tested-by: build bot (Jenkins) Reviewed-by: Yu-Ping Wu --- payloads/libpayload/arch/arm/head.S | 2 +- payloads/libpayload/arch/arm/libpayload.ldscript | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'payloads/libpayload/arch/arm') diff --git a/payloads/libpayload/arch/arm/head.S b/payloads/libpayload/arch/arm/head.S index c9a97b53ed..0640c50e47 100644 --- a/payloads/libpayload/arch/arm/head.S +++ b/payloads/libpayload/arch/arm/head.S @@ -56,4 +56,4 @@ ENDPROC(_entry) 1: .word cb_header_ptr 2: -.word _stack +.word _estack diff --git a/payloads/libpayload/arch/arm/libpayload.ldscript b/payloads/libpayload/arch/arm/libpayload.ldscript index 5510218ca2..d60ba8afb8 100644 --- a/payloads/libpayload/arch/arm/libpayload.ldscript +++ b/payloads/libpayload/arch/arm/libpayload.ldscript @@ -40,29 +40,35 @@ SECTIONS _start = .; .text : { + _text = .; *(.text._entry) *(.text) *(.text.*) + _etext = .; } .rodata : { + _rodata = .; *(.rodata) *(.rodata.*) + _erodata = .; } .data : { + _data = .; *(.data) *(.data.*) + _edata = .; } - _edata = .; - .bss : { + _bss = .; *(.sbss) *(.sbss.*) *(.bss) *(.bss.*) *(COMMON) + _ebss = .; /* Stack and heap */ @@ -72,10 +78,10 @@ SECTIONS . = ALIGN(16); _eheap = .; - _estack = .; + _stack = .; . += CONFIG_LP_STACK_SIZE; . = ALIGN(16); - _stack = .; + _estack = .; } _end = .; -- cgit v1.2.3