[Bug 1533009] Re: arm64: "unsupported RELA relocation"
Kj
1533009 at bugs.launchpad.net
Fri Feb 3 00:29:22 UTC 2017
I came across the same issue today (2/2/2017), i.e. "unsupported RELA
relocation: 275", while using "Ubuntu 16.04.1 LTS (GNU/Linux
4.4.0-59-generic aarch64)". I read above messages and have verified
that arch/arm64/Makefile does have -mpc-relative-literal-loads as shown
below. The kernel config file also has CONFIG_ARM64_ERRATUM_843419=y.
However, module.c shows "#ifndef CONFIG_ARM64_ERRATUM_843419".
Shouldn't this be #ifdef instead? Could it be that I'm seeing the error
message since #ifndef compiled out "case R_AARCH64_ADR_PREL_PG_HI21"
(275)?
ifeq ($(CONFIG_ARM64_ERRATUM_843419), y)
KBUILD_CFLAGS_MODULE += -mcmodel=large
KBUILD_CFLAGS_MODULE += $(call cc-option, -mpc-relative-literal-loads)
endif
File: arch/arm64/kernel/module.c
Linux Kernel Version: 4.9
195int apply_relocate_add(Elf64_Shdr *sechdrs,
196 const char *strtab,
197 unsigned int symindex,
198 unsigned int relsec,
199 struct module *me)
200{
...
334#ifndef CONFIG_ARM64_ERRATUM_843419
335 case R_AARCH64_ADR_PREL_PG_HI21_NC:
336 overflow_check = false;
337 case R_AARCH64_ADR_PREL_PG_HI21:
338 ovf = reloc_insn_imm(RELOC_OP_PAGE, loc, val, 12, 21,
339 AARCH64_INSN_IMM_ADR);
340 break;
341#endif
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-5 in Ubuntu.
https://bugs.launchpad.net/bugs/1533009
Title:
arm64: "unsupported RELA relocation"
Status in Linaro GCC:
Unknown
Status in Linux:
Unknown
Status in gcc-5 package in Ubuntu:
Invalid
Status in linux package in Ubuntu:
Fix Released
Status in gcc-5 source package in Trusty:
New
Status in linux source package in Trusty:
Fix Released
Status in gcc-5 source package in Vivid:
New
Status in linux source package in Vivid:
Fix Released
Status in gcc-5 source package in Wily:
New
Status in linux source package in Wily:
Fix Released
Status in gcc-5 source package in Xenial:
Invalid
Status in linux source package in Xenial:
Fix Released
Bug description:
linux-image-4.3.0-5-generic 4.3.0-5.16 arm64 fails to load modules
(and therefore boot). It emits messages like the following for each
attempted module load:
[ 2.156817] module libahci: unsupported RELA relocation: 275
This is reminiscent of LP: #1502946 - except that fix appears to still
be in-tact. What has changed, however, is the build environment. If I
rebuild the same kernel source in a wily chroot, it boots fine.
Marking "Confirmed" because Paulo Pisatti reported this to me, and I
reproduced.
To manage notifications about this bug go to:
https://bugs.launchpad.net/gcc-linaro/+bug/1533009/+subscriptions
More information about the foundations-bugs
mailing list