]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
module, arm: force sh_addr=0 for arch-specific sections
authorPetr Pavlu <petr.pavlu@suse.com>
Fri, 27 Mar 2026 07:59:00 +0000 (08:59 +0100)
committerSami Tolvanen <samitolvanen@google.com>
Tue, 26 May 2026 20:45:59 +0000 (20:45 +0000)
When linking modules with 'ld.bfd -r', sections defined without an address
inherit the location counter, resulting in non-zero sh_addr values in the
resulting .ko files. Relocatable objects are expected to have sh_addr=0 for
all sections. Non-zero addresses are confusing in this context, typically
worse compressible, and may cause tools to misbehave [1].

Force sh_addr=0 for all arm-specific module sections.

Link: https://sourceware.org/bugzilla/show_bug.cgi?id=33958
Signed-off-by: Petr Pavlu <petr.pavlu@suse.com>
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
arch/arm/include/asm/module.lds.h

index 0e7cb4e314b481117d85ac673d1880f5a91babf2..f9ad774b2889da4528fb8c8cbba4ffe1a95c41c7 100644 (file)
@@ -1,7 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
 #ifdef CONFIG_ARM_MODULE_PLTS
 SECTIONS {
-       .plt : { BYTE(0) }
-       .init.plt : { BYTE(0) }
+       .plt : { BYTE(0) }
+       .init.plt : { BYTE(0) }
 }
 #endif