summaryrefslogtreecommitdiff
path: root/include/linux/moduleloader.h
diff options
context:
space:
mode:
authorVincent Whitchurch <vincent.whitchurch@axis.com>2020-05-14 11:36:42 +0100
committerRussell King <rmk+kernel@armlinux.org.uk>2020-05-19 11:42:15 +0100
commitcdcb07e45a911a5be9d38bb1aff1f6de019503b2 (patch)
tree57648ba1a2c860c637dafa04ec550e3513f30973 /include/linux/moduleloader.h
parent0697e5e06ea0d96e2d1508104ff3b13e4dddc4bb (diff)
ARM: 8975/1: module: fix handling of unwind init sections
Unwind information for init sections is placed in .ARM.exidx.init.text and .ARM.extab.init.text. The module core doesn't know that these are init sections so they are allocated along with the core sections, and if the core and init sections get allocated in different memory regions (which is possible with CONFIG_ARM_MODULE_PLTS=y) and they can't reach each other, relocation fails: final section addresses: ... 0x7f800000 .init.text .. 0xcbb54078 .ARM.exidx.init.text .. section 16 reloc 0 sym '': relocation 42 out of range (0xcbb54078 -> 0x7f800000) Fix this by informing the module core that these sections are init sections, and by removing the init unwind tables before the module core frees the init sections. Signed-off-by: Vincent Whitchurch <vincent.whitchurch@axis.com> Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Diffstat (limited to 'include/linux/moduleloader.h')
0 files changed, 0 insertions, 0 deletions