lkml.org 
[lkml]   [2020]   [Dec]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: update.c:undefined reference to `irq_work_queue'
From
Date
On 12/21/20 9:03 PM, Paul E. McKenney wrote:
> On Tue, Dec 22, 2020 at 11:24:22AM +0800, kernel test robot wrote:
>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>> head: 8653b778e454a7708847aeafe689bce07aeeb94e
>> commit: b38f57c1fe64276773b124dffb0a139cc32ab3cb rcu-tasks: Allow rcu_read_unlock_trace() under scheduler locks
>> date: 8 months ago
>> config: h8300-randconfig-s032-20201220 (attached as .config)
>> compiler: h8300-linux-gcc (GCC) 9.3.0
>> reproduce:
>> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>> chmod +x ~/bin/make.cross
>> # apt-get install sparse
>> # sparse version: v0.6.3-184-g1b896707-dirty
>> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b38f57c1fe64276773b124dffb0a139cc32ab3cb
>> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>> git fetch --no-tags linus master
>> git checkout b38f57c1fe64276773b124dffb0a139cc32ab3cb
>> # save the attached .config to linux build tree
>> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=h8300
>>
>> If you fix the issue, kindly add following tag as appropriate
>> Reported-by: kernel test robot <lkp@intel.com>
>>
>> All errors (new ones prefixed by >>):
>>
>> h8300-linux-ld: section .init.text LMA [000000000043a160,0000000000452569] overlaps section .rodata LMA [00000000003ff420,000000000047df2f]
>> h8300-linux-ld: section .data VMA [0000000000400000,000000000043a15f] overlaps section .rodata VMA [00000000003ff420,000000000047df2f]
>> h8300-linux-ld: section __ksymtab VMA [000000000047df30,000000000048611f] overlaps section .bss VMA [000000000045ebd0,000000000056a053]
>> h8300-linux-ld: kernel/rcu/update.o: in function `rcu_read_unlock_trace_special':
>>>> update.c:(.text+0x8f9): undefined reference to `irq_work_queue'
>
> Does the patch below help?
>
> Thanx, Paul
>
> ------------------------------------------------------------------------
>
> commit cb7220ed05190c9a92df95b52a21525a7e08a449
> Author: Paul E. McKenney <paulmck@kernel.org>
> Date: Mon Dec 21 21:00:18 2020 -0800
>
> rcu: Make TASKS_TRACE_RCU select IRQ_WORK
>
> Tasks Trace RCU uses irq_work_queue() to safely awaken its grace-period
> kthread, so this commit therefore causes the TASKS_TRACE_RCU Kconfig
> option select the IRQ_WORK Kconfig option.
>
> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
>
> diff --git a/kernel/rcu/Kconfig b/kernel/rcu/Kconfig
> index aa8cc8c9..3128b7c 100644
> --- a/kernel/rcu/Kconfig
> +++ b/kernel/rcu/Kconfig
> @@ -95,6 +95,7 @@ config TASKS_RUDE_RCU
>
> config TASKS_TRACE_RCU
> def_bool 0
> + select IRQ_WORK
> help
> This option enables a task-based RCU implementation that uses
> explicit rcu_read_lock_trace() read-side markers, and allows
>

WorksForMe. Thanks.

Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested

\
 
 \ /
  Last update: 2020-12-23 21:08    [W:0.054 / U:0.204 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site