Skip to contentSkip to conversation

arm64 module: set plt* section addresses to 0x0

PATCH In review Shaoying Xu 2 participants 2 messages Mar 1, 2021 – Mar 4, 2021 Stable branch

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 arm64 module: set plt* section addresses to 0x0

commit f5c6d0fcf90ce07ee0d686d465b19b247ebd5ed7 upstream.

These plt* and .text.ftrace_trampoline sections specified for arm64 have non-zero addressses. Non-zero section addresses in a relocatable ELF would confuse GDB when it tries to compute the section offsets and it ends up printing wrong symbol addresses. Therefore, set them to zero, which mirrors the change in commit 5d8591bc0fba ("module: set ksymtab/kcrctab* section addresses to 0x0").

---
arch/arm64/include/asm/module.lds.h was renamed from arch/arm64/kernel/module.lds by commit 596b0474d3d9 ("kbuild: preprocess module linker script") since v5.10. Therefore, made same changes in arch/arm64/kernel/module.lds for 5.4.

 arch/arm64/kernel/module.lds | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
arch/arm64/kernel/module.lds +3 -3
index 22e36a21c113..09a0eef71d12 100644
@@ -1,5 +1,5 @@
 SECTIONS {
-	.plt (NOLOAD) : { BYTE(0) }
-	.init.plt (NOLOAD) : { BYTE(0) }
-	.text.ftrace_trampoline (NOLOAD) : { BYTE(0) }
+	.plt 0 (NOLOAD) : { BYTE(0) }
+	.init.plt 0 (NOLOAD) : { BYTE(0) }
+	.text.ftrace_trampoline 0 (NOLOAD) : { BYTE(0) }
 }
Signature · 1 line
2.16.6
#1 lore raw
Quoted 16 lines · Shaoying Xu

commit f5c6d0fcf90ce07ee0d686d465b19b247ebd5ed7 upstream.

These plt* and .text.ftrace_trampoline sections specified for arm64 have non-zero addressses. Non-zero section addresses in a relocatable ELF would confuse GDB when it tries to compute the section offsets and it ends up printing wrong symbol addresses. Therefore, set them to zero, which mirrors the change in commit 5d8591bc0fba ("module: set ksymtab/kcrctab* section addresses to 0x0").

Quoted 4 lines

---
arch/arm64/include/asm/module.lds.h was renamed from arch/arm64/kernel/module.lds by commit 596b0474d3d9 ("kbuild: preprocess module linker script") since v5.10. Therefore, made same changes in arch/arm64/kernel/module.lds for 5.4.

Now queued up, thanks.

greg k-h