Re: [PATCH] riscv: kexec: do not add '-mno-relax' flag if compiler doesn't support it

From: Palmer Dabbelt
Date: Thu Aug 12 2021 - 01:23:26 EST


On Wed, 21 Jul 2021 19:17:15 PDT (-0700), changbin.du@xxxxxxxxx wrote:
The RISC-V special option '-mno-relax' which to disable linker relaxations
is supported by GCC8+. For GCC7 and lower versions do not support this
option.

I would not trust GCC 7 on RISC-V, that was a long time ago and there's been a lot fixed since then.


Fixes: fba8a8674f ("RISC-V: Add kexec support")
Signed-off-by: Changbin Du <changbin.du@xxxxxxxxx>
---
arch/riscv/kernel/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/riscv/kernel/Makefile b/arch/riscv/kernel/Makefile
index d3081e4d9600..3397ddac1a30 100644
--- a/arch/riscv/kernel/Makefile
+++ b/arch/riscv/kernel/Makefile
@@ -11,7 +11,7 @@ endif
CFLAGS_syscall_table.o += $(call cc-option,-Wno-override-init,)

ifdef CONFIG_KEXEC
-AFLAGS_kexec_relocate.o := -mcmodel=medany -mno-relax
+AFLAGS_kexec_relocate.o := -mcmodel=medany $(call cc-option,-mno-relax)
endif

extra-y += head.o

This is on fixes.

Thanks!