With the latest dtc I've imported to the kernel, there is a new dependency on strnlen. This is giving the ARM decompressor an error. I have a couple of ideas on how to fix it: - Move string related functions in dtc to separate file - Add lib/string.c to the decompressor build - Build the decompressor with function-sections to discard the string related functions and avoid the linker error. Also, there's probably a bit of other unused code that would get dropped. function-sections doesn't work for the kernel in general, but may for the decompressor. Nico may know. - Don't update dtc and take the rest of the day off. Opinions? Rob ---------- Forwarded message ---------- From: kbuild test robot <fengguang.wu@xxxxxxxxx> Date: Tue, Jan 26, 2016 at 1:33 PM Subject: [robh:dt/next 2/2] fdt_ro.c:undefined reference to `strnlen' To: Rob Herring <robh@xxxxxxxxxx> Cc: kbuild-all@xxxxxx tree: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux dt/next head: 19b4d23a6157bec049027c435bbbf30e9af07e7f commit: 19b4d23a6157bec049027c435bbbf30e9af07e7f [2/2] scripts/dtc: Update to upstream commit b06e55c88b9b config: arm-at91_dt_defconfig (attached as .config) reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 19b4d23a6157bec049027c435bbbf30e9af07e7f # save the attached .config to linux build tree make.cross ARCH=arm All errors (new ones prefixed by >>): arch/arm/boot/compressed/fdt_ro.o: In function `fdt_stringlist_count': >> fdt_ro.c:(.text+0xaf0): undefined reference to `strnlen' arch/arm/boot/compressed/fdt_ro.o: In function `fdt_stringlist_search': fdt_ro.c:(.text+0xb6c): undefined reference to `strnlen' arch/arm/boot/compressed/fdt_ro.o: In function `fdt_stringlist_get': fdt_ro.c:(.text+0xc20): undefined reference to `strnlen' --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: Binary data