# 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_ppc64_book3e_allmodconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ppc64_book3e_allmodconfig # make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_book3e_allmodconfig_powerpc-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(); } ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /kisskb/src/arch/powerpc/kvm/powerpc.c:51:0: /kisskb/src/arch/powerpc/kvm/trace.h:9:0: warning: "TRACE_INCLUDE_PATH" redefined #define TRACE_INCLUDE_PATH . ^ In file included from /kisskb/src/arch/powerpc/kvm/../mm/mmu_decl.h:25:0, from /kisskb/src/arch/powerpc/kvm/powerpc.c:48: /kisskb/src/arch/powerpc/include/asm/trace.h:224:0: note: this is the location of the previous definition #define TRACE_INCLUDE_PATH asm ^ In file included from /kisskb/src/arch/powerpc/kvm/powerpc.c:51:0: /kisskb/src/arch/powerpc/kvm/trace.h:9:0: warning: "TRACE_INCLUDE_PATH" redefined #define TRACE_INCLUDE_PATH . ^ In file included from /kisskb/src/arch/powerpc/kvm/../mm/mmu_decl.h:25:0, from /kisskb/src/arch/powerpc/kvm/powerpc.c:48: /kisskb/src/arch/powerpc/include/asm/trace.h:224:0: note: this is the location of the previous definition #define TRACE_INCLUDE_PATH asm ^ In file included from /kisskb/src/drivers/net/ethernet/aurora/nb8800.c:40:0: /kisskb/src/drivers/net/ethernet/aurora/nb8800.h:92:0: warning: "TCR_DIE" redefined #define TCR_DIE BIT(7) ^ In file included from /kisskb/src/arch/powerpc/include/asm/reg.h:21:0, from /kisskb/src/arch/powerpc/include/asm/processor.h:13, from /kisskb/src/arch/powerpc/include/asm/thread_info.h:28, from /kisskb/src/include/linux/thread_info.h:38, from /kisskb/src/include/asm-generic/preempt.h:5, from ./arch/powerpc/include/generated/asm/preempt.h:1, from /kisskb/src/include/linux/preempt.h:81, from /kisskb/src/include/linux/spinlock.h:51, from /kisskb/src/include/linux/seqlock.h:36, from /kisskb/src/include/linux/time.h:6, from /kisskb/src/include/linux/stat.h:19, from /kisskb/src/include/linux/module.h:10, from /kisskb/src/drivers/net/ethernet/aurora/nb8800.c:23: /kisskb/src/arch/powerpc/include/asm/reg_booke.h:554:0: note: this is the location of the previous definition #define TCR_DIE TCR_PIE /* DEC Interrupt Enable */ ^ /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_selftest_dynamic.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_kprobe_selftest.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_clock.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/ftrace.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/ring_buffer.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_output.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_seq.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_stat.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_printk.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/tracing_map.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_sched_switch.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_functions.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_preemptirq.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_irqsoff.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_sched_wakeup.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_hwlat.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_nop.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_stack.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_functions_graph.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/blktrace.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_events.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_export.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_syscalls.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_event_perf.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_events_filter.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_events_trigger.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_events_hist.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/bpf_trace.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_kprobe.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/power-traces.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/rpm-traces.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_kdb.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_probe.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_uprobe.o' being placed in section `.data..LPBX1'. /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld: warning: orphan section `.data..LPBX1' from `kernel/trace/trace_benchmark.o' being placed in section `.data..LPBX1'. drivers/usb/phy/phy-fsl-usb.o: In function `.fsl_otg_ioctl': phy-fsl-usb.c:(.text.fsl_otg_ioctl+0xe0): undefined reference to `.otg_statemachine' drivers/usb/phy/phy-fsl-usb.o: In function `.fsl_otg_start_srp': phy-fsl-usb.c:(.text.fsl_otg_start_srp+0x50): undefined reference to `.otg_statemachine' drivers/usb/phy/phy-fsl-usb.o: In function `.fsl_otg_set_host': phy-fsl-usb.c:(.text.fsl_otg_set_host+0xe0): undefined reference to `.otg_statemachine' drivers/usb/phy/phy-fsl-usb.o: In function `.fsl_otg_start_hnp': phy-fsl-usb.c:(.text.fsl_otg_start_hnp+0x48): undefined reference to `.otg_statemachine' drivers/usb/phy/phy-fsl-usb.o: In function `.show_fsl_usb2_otg_state': phy-fsl-usb.c:(.text.show_fsl_usb2_otg_state+0x154): undefined reference to `.usb_otg_state_string' drivers/usb/phy/phy-fsl-usb.o: In function `.a_wait_enum': (.text.a_wait_enum+0x50): undefined reference to `.otg_statemachine' drivers/usb/phy/phy-fsl-usb.o: In function `.fsl_otg_set_peripheral': phy-fsl-usb.c:(.text.fsl_otg_set_peripheral+0x84): undefined reference to `.usb_gadget_vbus_disconnect' phy-fsl-usb.c:(.text.fsl_otg_set_peripheral+0x9c): undefined reference to `.otg_statemachine' make[1]: *** [/kisskb/src/Makefile:1036: vmlinux] Error 1 make: *** [Makefile:146: sub-make] Error 2 Command 'make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_book3e_allmodconfig_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_ppc64_book3e_allmodconfig_powerpc-gcc5 # Build took: 0:02:56.848077