# git rev-parse -q --verify 1936f094e164cc13ebf17aba1d6b34e033e64188^{commit} 1936f094e164cc13ebf17aba1d6b34e033e64188 already have revision, skipping fetch # git checkout -q -f -B kisskb 1936f094e164cc13ebf17aba1d6b34e033e64188 # git clean -qxdf # < git log -1 # commit 1936f094e164cc13ebf17aba1d6b34e033e64188 # Author: Naveen N. Rao # Date: Wed Oct 31 22:48:13 2018 +0530 # # selftests/powerpc: Fix compilation issue due to asm label # # We are using 'dscr_insn' as a label in inline asm to identify if a # SIGILL was generated by the mtspr instruction at that point. However, # with inline assembly, the compiler is still free to duplicate the asm # statement for optimization purposes, which results in the label being # defined twice with the error: # /tmp/ccerQCql.s:874: Error: symbol `dscr_insn' is already defined # # With different compiler versions, we may also see: # /tmp/ccJzLDlN.o:(.toc+0x0): undefined reference to `dscr_insn' # # Remove the use of the label in the inline assembly. Instead, just look # for the offending instruction in the signal handler. # # Fixes: d2bf793237b3 ("selftests/powerpc: Add test to verify rfi flush across a system call") # Reported-by: Breno Leitao # Signed-off-by: Naveen N. Rao # Tested-by: Breno Leitao # Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < git log --format=%s --max-count=1 1936f094e164cc13ebf17aba1d6b34e033e64188 # < make -s -j 80 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- randconfig KCONFIG_SEED=0x44847A8 # Added to kconfig CONFIG_STANDALONE=y # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_CPU_BIG_ENDIAN=y # Added to kconfig CONFIG_PPC64=y # Added to kconfig CONFIG_PPC_DISABLE_WERROR=y # Added to kconfig CONFIG_SECTION_MISMATCH_WARN_ONLY=y # Added to kconfig CONFIG_PREVENT_FIRMWARE_BUILD=y # Added to kconfig CONFIG_CC_STACKPROTECTOR_STRONG=n # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig CONFIG_LD_HEAD_STUB_CATCH=y # Added to kconfig # yes \n | make -s -j 80 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- oldconfig yes: standard output: Broken pipe # make -s -j 80 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- WARNING: modpost: Found 4 section mismatch(es). To see full details build your kernel with: 'make CONFIG_DEBUG_SECTION_MISMATCH=y' /kisskb/src/scripts/link-vmlinux.sh: line 85: 8020 Segmentation fault (core dumped) ${LD} ${KBUILD_LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} -T ${lds} ${objects} make[1]: *** [/kisskb/src/Makefile:1040: vmlinux] Error 139 make: *** [Makefile:146: sub-make] Error 2 Command 'make -s -j 80 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc5 # Build took: 0:11:17.082083