Re: ld.lld: error: relocation R_PPC_ADDR16_LO cannot be used against symbol 'init_task'; recompile with -fPIC
From: Feng Tang <hidden>
Date: 2026-07-10 02:51:31
Also in:
lkml, oe-kbuild-all
Thanks for the report! Add Powerpc list. On Fri, Jul 10, 2026 at 06:18:50AM +0800, kernel test robot wrote:
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 0e35b9b6ec0ffcc5e23cbdec09f5c622ad532b53 commit: d5cae2261b86913e602452ce4a07e6aefc0f603b dma-contiguous: simplify numa cma area handling date: 6 weeks ago config: powerpc-randconfig-r133-20260709 (https://download.01.org/0day-ci/archive/20260710/202607100652.WPUlEAfx-lkp@intel.com/config) compiler: clang version 21.1.8 (https://github.com/llvm/llvm-project 2078da43e25a4623cab2d0d60decddf709aaea28) sparse: v0.6.5-rc1 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260710/202607100652.WPUlEAfx-lkp@intel.com/reproduce)
All errors (new ones prefixed by >>):quoted
quoted
ld.lld: error: relocation R_PPC_ADDR16_LO cannot be used against symbol 'init_task'; recompile with -fPIC>>> defined in vmlinux.a(init/init_task.o) >>> referenced by head_44x.S:101 (arch/powerpc/kernel/head_44x.S:101) >>> arch/powerpc/kernel/head_44x.o:(.head.text+0x42) in archive vmlinux.a --quoted
quoted
ld.lld: error: relocation R_PPC_ADDR16_HI cannot be used against symbol 'init_thread_union'; recompile with -fPIC>>> defined in ./arch/powerpc/kernel/vmlinux.lds:133 >>> referenced by head_44x.S:108 (arch/powerpc/kernel/head_44x.S:108) >>> arch/powerpc/kernel/head_44x.o:(.head.text+0x4e) in archive vmlinux.a
I checked the patch and couldn't find obvious clue between the patch and the error. commit d5cae2261b8691 only changes kernel/dma/contiguous.c, which is under CONFIG_DMA_CMA per kernel/dma/Makefile. In your config above, CONFIG_DMA_CMA is not even set, so the contigous.c should not be compiled. Could you help to double check? thanks! - Feng
Kconfig warnings: (for reference only) WARNING: unmet direct dependencies detected for HOTPLUG_CPU Depends on [n]: SMP [=y] && (PPC_PSERIES [=n] || PPC_PMAC [=n] || PPC_POWERNV [=n] || FSL_SOC_BOOKE [=n]) Selected by [y]: - PM_SLEEP_SMP [=y] && SMP [=y] && (ARCH_SUSPEND_POSSIBLE [=y] || ARCH_HIBERNATION_POSSIBLE [=y]) && PM_SLEEP [=y] -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki