From 1bcfc75d85695cf8a9707390d8d3fdb5ca53ab6c Mon Sep 17 00:00:00 2001 From: bdragon Date: Fri, 27 Dec 2019 04:07:51 +0000 Subject: [PATCH] [PowerPC] Switch to PIC kernel modules on powerpc* To improve reliability of kernel modules after the clang switch, switch to -fPIC when building for now. This bypasses some limitations to the way clang and LLD handle relocations, and is a more robustly tested compilation regime than the "static shared object" mode that we were previously attempting to convince the compiler stack to use. The kernel linker was recently augmented to be able to handle this mode. Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D22798 --- sys/conf/kmod.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/conf/kmod.mk b/sys/conf/kmod.mk index 25db152aa001..521bd4f78ada 100644 --- a/sys/conf/kmod.mk +++ b/sys/conf/kmod.mk @@ -132,7 +132,8 @@ CFLAGS+= ${DEBUG_FLAGS} CFLAGS+= -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer .endif -.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "riscv" +.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "riscv" || \ + ${MACHINE_CPUARCH} == "powerpc" CFLAGS+= -fPIC .endif