# 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 120 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_randconfig+ppc64le_ppc64le-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- randconfig KCONFIG_SEED=0xD7BDA266 # 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=n # Added to kconfig CONFIG_CPU_LITTLE_ENDIAN=y # Added to kconfig CONFIG_PPC64=y # Added to kconfig CONFIG_PPC_BOOK3E_64=n # Added to kconfig CONFIG_PPC_BOOK3S_64=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_LD_HEAD_STUB_CATCH=y # yes \n | make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_randconfig+ppc64le_ppc64le-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 120 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_randconfig+ppc64le_ppc64le-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/scripts/unifdef.c: In function 'Mpass': /kisskb/src/scripts/unifdef.c:453:28: warning: 'strncpy' output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] static void Mpass (void) { strncpy(keyword, "if ", 4); Pelif(); } ^~~~~~~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/powerpc/kernel/eeh.c:1752:12: warning: 'proc_eeh_show' defined but not used [-Wunused-function] static int proc_eeh_show(struct seq_file *m, void *v) ^ In file included from /kisskb/src/include/linux/io.h:25:0, from /kisskb/src/include/linux/of_address.h:7, from /kisskb/src/drivers/ata/ahci_qoriq.c:18: /kisskb/src/drivers/ata/ahci_qoriq.c: In function 'ahci_qoriq_hardreset': /kisskb/src/arch/powerpc/include/asm/io.h:143:2: warning: 'px_is' may be used uninitialized in this function [-Wmaybe-uninitialized] __asm__ __volatile__("sync;"#insn"%U0%X0 %1,%0" \ ^ /kisskb/src/drivers/ata/ahci_qoriq.c:86:14: note: 'px_is' was declared here u32 px_cmd, px_is, px_val; ^ In file included from /kisskb/src/include/linux/io.h:25:0, from /kisskb/src/include/linux/of_address.h:7, from /kisskb/src/drivers/ata/ahci_qoriq.c:18: /kisskb/src/arch/powerpc/include/asm/io.h:143:2: warning: 'px_cmd' may be used uninitialized in this function [-Wmaybe-uninitialized] __asm__ __volatile__("sync;"#insn"%U0%X0 %1,%0" \ ^ /kisskb/src/drivers/ata/ahci_qoriq.c:86:6: note: 'px_cmd' was declared here u32 px_cmd, px_is, px_val; ^ /kisskb/src/drivers/usb/misc/usbtest.c: In function 'test_queue': /kisskb/src/drivers/usb/misc/usbtest.c:2128:1: warning: the frame size of 1232 bytes is larger than 1024 bytes [-Wframe-larger-than=] } ^ WARNING: modpost: Found 3 section mismatch(es). To see full details build your kernel with: 'make CONFIG_DEBUG_SECTION_MISMATCH=y' Completed OK # rm -rf /kisskb/build/powerpc-next-rand_randconfig+ppc64le_ppc64le-gcc5 # Build took: 0:00:52.788265