# git rev-parse -q --verify 0bc81767c5bd9d005fae1099fb39eb3688370cb1^{commit} 0bc81767c5bd9d005fae1099fb39eb3688370cb1 already have revision, skipping fetch # git checkout -q -f -B kisskb 0bc81767c5bd9d005fae1099fb39eb3688370cb1 # git clean -qxdf # < git log -1 # commit 0bc81767c5bd9d005fae1099fb39eb3688370cb1 # Author: Ard Biesheuvel # Date: Fri Jan 17 17:43:18 2020 +0100 # # crypto: arm/chacha - fix build failured when kernel mode NEON is disabled # # When the ARM accelerated ChaCha driver is built as part of a configuration # that has kernel mode NEON disabled, we expect the compiler to propagate # the build time constant expression IS_ENABLED(CONFIG_KERNEL_MODE_NEON) in # a way that eliminates all the cross-object references to the actual NEON # routines, which allows the chacha-neon-core.o object to be omitted from # the build entirely. # # Unfortunately, this fails to work as expected in some cases, and we may # end up with a build error such as # # chacha-glue.c:(.text+0xc0): undefined reference to `chacha_4block_xor_neon' # # caused by the fact that chacha_doneon() has not been eliminated from the # object code, even though it will never be called in practice. # # Let's fix this by adding some IS_ENABLED(CONFIG_KERNEL_MODE_NEON) tests # that are not strictly needed from a logical point of view, but should # help the compiler infer that the NEON code paths are unreachable in # those cases. # # Fixes: b36d8c09e710c71f ("crypto: arm/chacha - remove dependency on generic ...") # Reported-by: Russell King # Cc: Arnd Bergmann # Signed-off-by: Ard Biesheuvel # Signed-off-by: Herbert Xu # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 0bc81767c5bd9d005fae1099fb39eb3688370cb1 # < make -s -j 32 ARCH=powerpc O=/kisskb/build/crypto_powernv_defconfig_ppc64le-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- powernv_defconfig # make -s -j 32 ARCH=powerpc O=/kisskb/build/crypto_powernv_defconfig_ppc64le-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- WARNING: vmlinux.o(.text+0x2fc8): Section mismatch in reference from the variable start_here_common to the function .init.text:start_kernel() The function start_here_common() references the function __init start_kernel(). This is often because start_here_common lacks a __init annotation or the annotation of start_kernel is wrong. Completed OK # rm -rf /kisskb/build/crypto_powernv_defconfig_ppc64le-gcc5 # Build took: 0:03:20.123998