mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-23 00:15:56 -04:00
module, arm64: force sh_addr=0 for arch-specific sections
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 arm64-specific module sections. Link: https://sourceware.org/bugzilla/show_bug.cgi?id=33958 [1] Signed-off-by: Petr Pavlu <petr.pavlu@suse.com> Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
This commit is contained in:
committed by
Sami Tolvanen
parent
ffe1545ce8
commit
c5553deb57
@@ -14,7 +14,7 @@ SECTIONS {
|
||||
* directive to force them into a single section and silence the
|
||||
* warning.
|
||||
*/
|
||||
.text.hot : { *(.text.hot) }
|
||||
.text.hot 0 : { *(.text.hot) }
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_UNWIND_TABLES
|
||||
@@ -22,6 +22,6 @@ SECTIONS {
|
||||
* Currently, we only use unwind info at module load time, so we can
|
||||
* put it into the .init allocation.
|
||||
*/
|
||||
.init.eh_frame : { *(.eh_frame) }
|
||||
.init.eh_frame 0 : { *(.eh_frame) }
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user