From 1739c99efe9b0775a859f2b46e6fd99b6a46927e Mon Sep 17 00:00:00 2001 From: Yi Chou Date: Fri, 17 Nov 2023 19:58:11 +0800 Subject: libpayload: Move ttb_buffer to a standalone section When cleaning the sensitive data in the memory, we will want to prevent zero out the content of tbb_buffer. Move the ttb_buffer to a standalone section will simplify the problem. BUG=b:248610274 TEST=emerge-cherry libpayload BRANCH=none Change-Id: I610276cbe30552263d791860c15e5ad9a201c744 Signed-off-by: Yi Chou Reviewed-on: https://review.coreboot.org/c/coreboot/+/79078 Reviewed-by: Julius Werner Tested-by: build bot (Jenkins) --- payloads/libpayload/arch/arm64/libpayload.ldscript | 2 ++ payloads/libpayload/arch/arm64/mmu.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'payloads') diff --git a/payloads/libpayload/arch/arm64/libpayload.ldscript b/payloads/libpayload/arch/arm64/libpayload.ldscript index f9fb771da61a..e225aa8bca95 100644 --- a/payloads/libpayload/arch/arm64/libpayload.ldscript +++ b/payloads/libpayload/arch/arm64/libpayload.ldscript @@ -58,6 +58,8 @@ SECTIONS _edata = .; .bss : { + *(.ttb_buffer) + *(.sbss) *(.sbss.*) *(.bss) diff --git a/payloads/libpayload/arch/arm64/mmu.c b/payloads/libpayload/arch/arm64/mmu.c index 4c8f8c15a80c..bb7954473c2b 100644 --- a/payloads/libpayload/arch/arm64/mmu.c +++ b/payloads/libpayload/arch/arm64/mmu.c @@ -41,7 +41,8 @@ static unsigned int max_tables; static uint64_t *xlat_addr; static int free_idx; -static uint8_t ttb_buffer[TTB_DEFAULT_SIZE] __attribute__((aligned(GRANULE_SIZE))); +static uint8_t ttb_buffer[TTB_DEFAULT_SIZE] __aligned(GRANULE_SIZE) + __attribute__((__section__(".ttb_buffer"))); static const char * const tag_to_string[] = { [TYPE_NORMAL_MEM] = "normal", -- cgit v1.2.3