Yi Chou has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/79144?usp=email )
Change subject: libpayload: Fix the stack and data labels ......................................................................
libpayload: Fix the stack and data labels
We should make sure the consistency between _stack/_estack and the other labels. 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
Change-Id: I589040f4db60b35813ea9f4ba9503244bd7def00 Signed-off-by: Yi Chou yich@google.com --- M payloads/libpayload/arch/arm/libpayload.ldscript M payloads/libpayload/arch/arm64/libpayload.ldscript M payloads/libpayload/arch/x86/libpayload.ldscript 3 files changed, 18 insertions(+), 12 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/44/79144/1
diff --git a/payloads/libpayload/arch/arm/libpayload.ldscript b/payloads/libpayload/arch/arm/libpayload.ldscript index 5510218..73c8f0b 100644 --- a/payloads/libpayload/arch/arm/libpayload.ldscript +++ b/payloads/libpayload/arch/arm/libpayload.ldscript @@ -51,12 +51,14 @@ }
.data : { + . = ALIGN(16); + _data = .; *(.data) *(.data.*) + . = ALIGN(16); + _edata = .; }
- _edata = .; - .bss : { *(.sbss) *(.sbss.*) @@ -72,10 +74,10 @@ . = ALIGN(16); _eheap = .;
- _estack = .; + _stack = .; . += CONFIG_LP_STACK_SIZE; . = ALIGN(16); - _stack = .; + _estack = .; }
_end = .; diff --git a/payloads/libpayload/arch/arm64/libpayload.ldscript b/payloads/libpayload/arch/arm64/libpayload.ldscript index e225aa8..be95a42 100644 --- a/payloads/libpayload/arch/arm64/libpayload.ldscript +++ b/payloads/libpayload/arch/arm64/libpayload.ldscript @@ -51,12 +51,14 @@ }
.data : { + . = ALIGN(16); + _data = .; *(.data) *(.data.*) + . = ALIGN(16); + _edata = .; }
- _edata = .; - .bss : { *(.ttb_buffer)
@@ -74,10 +76,10 @@ . = ALIGN(16); _eheap = .;
- _estack = .; + _stack = .; . += CONFIG_LP_STACK_SIZE; . = ALIGN(16); - _stack = .; + _estack = .; }
_end = .; diff --git a/payloads/libpayload/arch/x86/libpayload.ldscript b/payloads/libpayload/arch/x86/libpayload.ldscript index 2d7e912..ee0fdfd 100644 --- a/payloads/libpayload/arch/x86/libpayload.ldscript +++ b/payloads/libpayload/arch/x86/libpayload.ldscript @@ -50,12 +50,14 @@ }
.data : { + . = ALIGN(16); + _data = .; *(.data) *(.data.*) + . = ALIGN(16); + _edata = .; }
- _edata = .; - .bss : { *(.sbss) *(.sbss.*) @@ -71,10 +73,10 @@ . = ALIGN(16); _eheap = .;
- _estack = .; + _stack = .; . += CONFIG_LP_STACK_SIZE; . = ALIGN(16); - _stack = .; + _estack = .; }
_end = .;