Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 26399219 authored by Todd Kjos's avatar Todd Kjos
Browse files

ANDROID: kernelci build-break for 64-bit riscv clang builds (5.4 only)



No 64-bit riscv builds were working with clang (found via kernelci) for our 5.4 kernels:

ld.lld: error: arch/riscv/built-in.a(kernel/signal.o):(function do_notify_resume: .text+0x30c): relocation R_RISCV_PCREL_HI20 out of range: 33554406 is not in [-524288, 524287]; references '__vdso_rt_sigreturn'
>>> referenced by signal.c
>>> defined in arch/riscv/built-in.a(kernel/vdso/vdso-syms.o)

There are two ANDROID-specific patches that added global variables that
must be reverted to fix the build:

f06e9ec9 ("BACKPORT: RISC-V: Stop relying on GCC's register allocator's hueristics")
3818981c3332 ("ANDROID: declare sp_in_global outside of CONFIG_FRAME_POINTER")

Also, CONFIG_INIT_STACK_ALL_PATTERN must be disabled to avoid the
relocation issues.

These issues all seem to be fixed in 5.10 and later kernels.

Bug: 393656515
Signed-off-by: default avatarTodd Kjos <tkjos@google.com>
Change-Id: I0a5395a9767b94ec2291c9ef7e9a69f1f4665730
parent 2c404122
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment