mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Frederic Weisbecker <frederic@kernel.org>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org
Subject: [frederic-dynticks:rcu/context-tracking-v4 9/20] kernel/softirq.c:610: undefined reference to `ct_irq_enter'
Date: Sun, 5 Jun 2022 05:49:43 +0800	[thread overview]
Message-ID: <202206050548.DSjyYju7-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git rcu/context-tracking-v4
head:   77493b1db618c61dec140cbab830832f77203d69
commit: ede17b80373d0c3e886b3b4d9533f6c12cf1e799 [9/20] context_tracking: Take IRQ eqs entrypoints over RCU
config: x86_64-randconfig-a008 (https://download.01.org/0day-ci/archive/20220605/202206050548.DSjyYju7-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=ede17b80373d0c3e886b3b4d9533f6c12cf1e799
        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 ede17b80373d0c3e886b3b4d9533f6c12cf1e799
        # 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_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 +610 kernel/softirq.c

   604	
   605	/**
   606	 * irq_enter - Enter an interrupt context including RCU update
   607	 */
   608	void irq_enter(void)
   609	{
 > 610		ct_irq_enter();
   611		irq_enter_rcu();
   612	}
   613	
   614	static inline void tick_irq_exit(void)
   615	{
   616	#ifdef CONFIG_NO_HZ_COMMON
   617		int cpu = smp_processor_id();
   618	
   619		/* Make sure that timer wheel updates are propagated */
   620		if ((idle_cpu(cpu) && !need_resched()) || tick_nohz_full_cpu(cpu)) {
   621			if (!in_hardirq())
   622				tick_nohz_irq_exit();
   623		}
   624	#endif
   625	}
   626	
   627	static inline void __irq_exit_rcu(void)
   628	{
   629	#ifndef __ARCH_IRQ_EXIT_IRQS_DISABLED
   630		local_irq_disable();
   631	#else
   632		lockdep_assert_irqs_disabled();
   633	#endif
   634		account_hardirq_exit(current);
   635		preempt_count_sub(HARDIRQ_OFFSET);
   636		if (!in_interrupt() && local_softirq_pending())
   637			invoke_softirq();
   638	
   639		tick_irq_exit();
   640	}
   641	
   642	/**
   643	 * irq_exit_rcu() - Exit an interrupt context without updating RCU
   644	 *
   645	 * Also processes softirqs if needed and possible.
   646	 */
   647	void irq_exit_rcu(void)
   648	{
   649		__irq_exit_rcu();
   650		 /* must be last! */
   651		lockdep_hardirq_exit();
   652	}
   653	
   654	/**
   655	 * irq_exit - Exit an interrupt context, update RCU and lockdep
   656	 *
   657	 * Also processes softirqs if needed and possible.
   658	 */
   659	void irq_exit(void)
   660	{
   661		__irq_exit_rcu();
 > 662		ct_irq_exit();
   663		 /* must be last! */
   664		lockdep_hardirq_exit();
   665	}
   666	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

                 reply	other threads:[~2022-06-04 21:50 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202206050548.DSjyYju7-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=frederic@kernel.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®