Messages in this thread | | | Date | Sun, 5 Jun 2022 06:40:56 +0800 | From | kernel test robot <> | Subject | [frederic-dynticks:rcu/context-tracking-v4 10/20] kernel/entry/common.c:452: undefined reference to `ct_nmi_enter' |
| |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git rcu/context-tracking-v4 head: 77493b1db618c61dec140cbab830832f77203d69 commit: d3d60b6390751cda15d2295725673f78303e4ea4 [10/20] context_tracking: Take NMI eqs entrypoints over RCU config: x86_64-randconfig-a008 (https://download.01.org/0day-ci/archive/20220605/202206050647.OqMhvNtv-lkp@intel.com/config) compiler: gcc-11 (Debian 11.3.0-1) 11.3.0 reproduce (this is a W=1 build): # https://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git/commit/?id=d3d60b6390751cda15d2295725673f78303e4ea4 git remote add frederic-dynticks https://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git git fetch --no-tags frederic-dynticks rcu/context-tracking-v4 git checkout d3d60b6390751cda15d2295725673f78303e4ea4 # save the config file mkdir build_dir && cp config build_dir/.config make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash
If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
vmlinux.o: warning: objtool: pvh_start_xen()+0x0: unreachable instruction ld: vmlinux.o: in function `irq_enter': kernel/softirq.c:610: undefined reference to `ct_irq_enter' ld: vmlinux.o: in function `irq_exit': kernel/softirq.c:662: undefined reference to `ct_irq_exit' ld: vmlinux.o: in function `trace_console_rcuidle': include/trace/events/printk.h:10: undefined reference to `ct_irq_enter_irqson' ld: include/trace/events/printk.h:10: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `bc_set_next': kernel/time/tick-broadcast-hrtimer.c:64: undefined reference to `ct_irq_enter_irqson' ld: kernel/time/tick-broadcast-hrtimer.c:64: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `trace_irq_disable_rcuidle': include/trace/events/preemptirq.h:36: undefined reference to `ct_irq_enter_irqson' ld: include/trace/events/preemptirq.h:36: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `trace_irq_enable_rcuidle': include/trace/events/preemptirq.h:40: undefined reference to `ct_irq_enter_irqson' ld: include/trace/events/preemptirq.h:40: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `trace_clk_disable_rcuidle': include/trace/events/clk.h:46: undefined reference to `ct_irq_enter_irqson' ld: include/trace/events/clk.h:46: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `trace_clk_disable_complete_rcuidle': include/trace/events/clk.h:53: undefined reference to `ct_irq_enter_irqson' ld: include/trace/events/clk.h:53: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `trace_clk_enable_rcuidle': include/trace/events/clk.h:32: undefined reference to `ct_irq_enter_irqson' ld: include/trace/events/clk.h:32: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `trace_clk_enable_complete_rcuidle': include/trace/events/clk.h:39: undefined reference to `ct_irq_enter_irqson' ld: include/trace/events/clk.h:39: undefined reference to `ct_irq_exit_irqson' ld: vmlinux.o: in function `irqentry_nmi_enter': >> kernel/entry/common.c:452: undefined reference to `ct_nmi_enter' ld: vmlinux.o: in function `irqentry_nmi_exit': >> kernel/entry/common.c:472: undefined reference to `ct_nmi_exit' ld: vmlinux.o: in function `irqentry_exit': kernel/entry/common.c:421: undefined reference to `ct_irq_exit' ld: kernel/entry/common.c:439: undefined reference to `ct_irq_exit'
vim +452 kernel/entry/common.c
442 443 irqentry_state_t noinstr irqentry_nmi_enter(struct pt_regs *regs) 444 { 445 irqentry_state_t irq_state; 446 447 irq_state.lockdep = lockdep_hardirqs_enabled(); 448 449 __nmi_enter(); 450 lockdep_hardirqs_off(CALLER_ADDR0); 451 lockdep_hardirq_enter(); > 452 ct_nmi_enter(); 453 454 instrumentation_begin(); 455 trace_hardirqs_off_finish(); 456 ftrace_nmi_enter(); 457 instrumentation_end(); 458 459 return irq_state; 460 } 461 462 void noinstr irqentry_nmi_exit(struct pt_regs *regs, irqentry_state_t irq_state) 463 { 464 instrumentation_begin(); 465 ftrace_nmi_exit(); 466 if (irq_state.lockdep) { 467 trace_hardirqs_on_prepare(); 468 lockdep_hardirqs_on_prepare(CALLER_ADDR0); 469 } 470 instrumentation_end(); 471 > 472 ct_nmi_exit();
-- 0-DAY CI Kernel Test Service https://01.org/lkp
| |