[PATCH 1/1] efi_loader: add .rela sections to .text on arm64

Heinrich Schuchardt heinrich.schuchardt at canonical.com
Sun Jan 8 19:00:47 CET 2023


_relocate() needs the information in .rela* for self relocation
of the EFI binary.

Fixes: d7ddeb66a6ce ("efi_loader: fix building aarch64 EFI binaries")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
---
 arch/arm/lib/elf_aarch64_efi.lds | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/lib/elf_aarch64_efi.lds b/arch/arm/lib/elf_aarch64_efi.lds
index 3e3da47d6a..5dd9809169 100644
--- a/arch/arm/lib/elf_aarch64_efi.lds
+++ b/arch/arm/lib/elf_aarch64_efi.lds
@@ -28,6 +28,10 @@ SECTIONS
 		*(.dynamic);
 		. = ALIGN(512);
 	}
+	.rela.dyn : { *(.rela.dyn) }
+	.rela.plt : { *(.rela.plt) }
+	.rela.got : { *(.rela.got) }
+	.rela.data : { *(.rela.data) *(.rela.data*) }
 	_etext = .;
 	_text_size = . - _text;
 	. = ALIGN(4096);
@@ -57,10 +61,6 @@ SECTIONS
 		_edata = .;
 	} :data
 	_data_size = _edata - _data;
-	.rela.dyn : { *(.rela.dyn) }
-	.rela.plt : { *(.rela.plt) }
-	.rela.got : { *(.rela.got) }
-	.rela.data : { *(.rela.data) *(.rela.data*) }
 
 	. = ALIGN(4096);
 	.dynsym   : { *(.dynsym) }
-- 
2.37.2



More information about the U-Boot mailing list