Fixed
Created: Mar 2, 2017
Updated: Sep 8, 2018
Resolved Date: Mar 21, 2017
Found In Version: 7.0.0.22
Fix Version: 7.0.0.24
Severity: Standard
Applicable for: Wind River Linux 7
Component/s: Kernel
I created an issue ( LIN7-7546 ) because there was a problem adding a filesystem, the patch worked well, however the filesystem was added as a Module and after the compiling part the linker couldn't find do_falloc symbols.
Steps to reproduce:
================
Create a project using these configure options
configure --enable-board=ti-66ak2xxx --enable-rm-oldimgs=yes --enable-kernel=preempt-rt --enable-bootimage=cpio,ubifs --with-mkubifs-args="-F -m 2048 -e 126976 -c 8015" --enable-rootfs=glibc_std
Then add aufs using menuconfig
$make linux-windriver.menuconfig
The config file of kernel should have aufs options with the values below
CONFIG_AUFS_FS=m
CONFIG_AUFS_BRANCH_MAX_127=y
# CONFIG_AUFS_BRANCH_MAX_511 is not set
# CONFIG_AUFS_BRANCH_MAX_1023 is not set
# CONFIG_AUFS_BRANCH_MAX_32767 is not set
CONFIG_AUFS_SBILIST=y
# CONFIG_AUFS_HNOTIFY is not set
# CONFIG_AUFS_EXPORT is not set
# CONFIG_AUFS_FHSM is not set
# CONFIG_AUFS_RDU is not set
# CONFIG_AUFS_SHWH is not set
# CONFIG_AUFS_BR_RAMFS is not set
# CONFIG_AUFS_BR_FUSE is not set
CONFIG_AUFS_BDEV_LOOP=y
# CONFIG_AUFS_DEBUG is not set
Then apply the patch on LIN7-7546
Then build the kernel with
$make linux-windriver
The error output was:
| DEBUG: Executing shell function do_compile_kernelmodules
| NOTE: make -j 12 modules CC=arm-wrs-linux-gnueabi-gcc -mno-thumb-interwork -marm LD=arm-wrs-linux-gnueabi-ld
| /wr/cases/case00068654_prj/bitbake_build/tmp/work-shared/ti-66ak2xxx/kernel-source/Makefile:1090: target '_clean_samples' given more than once in the same rule
| CHK include/config/kernel.release
| Using /wr/cases/case00068654_prj/bitbake_build/tmp/work-shared/ti-66ak2xxx/kernel-source as source for kernel
| GEN /wr/cases/case00068654_prj/bitbake_build/tmp/work/ti_66ak2xxx-wrs-linux-gnueabi/linux-windriver/3.14-r0/linux-ti_66ak2xxx-preempt-rt-build/Makefile
| CHK include/generated/uapi/linux/version.h
| CHK include/generated/utsrelease.h
| make[3]: 'include/generated/mach-types.h' is up to date.
| CALL /wr/cases/case00068654_prj/bitbake_build/tmp/work-shared/ti-66ak2xxx/kernel-source/scripts/checksyscalls.sh
| Building modules, stage 2.
| MODPOST 205 modules
| ERROR: "do_fallocate" [fs/aufs/aufs.ko] undefined!
| /wr/cases/case00068654_prj/bitbake_build/tmp/work-shared/ti-66ak2xxx/kernel-source/scripts/Makefile.modpost:90: recipe for target '__modpost' failed
| make[3]: *** [__modpost] Error 1
| /wr/cases/case00068654_prj/bitbake_build/tmp/work-shared/ti-66ak2xxx/kernel-source/Makefile:1001: recipe for target 'modules' failed
| make[2]: *** [modules] Error 2
| Makefile:133: recipe for target 'sub-make' failed
| make[1]: *** [sub-make] Error 2
| Makefile:26: recipe for target 'all' failed
| make: *** [all] Error 2
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile_kernelmodules (log file is located at /wr/cases/case00068654_prj/bitbake_build/tmp/work/ti_66ak2xxx-wrs-linux-gnueabi/linux-windriver/3.14-r0/temp/do_compile_kernelmodules/log.do_compile_kernelmodules.8991)
I created a patch for that and it works as expected, after that the build is successful. Can you please validate it?