Re: [rcu:dev.2020.12.15b 130/134] include/linux/stddef.h:8:14: error: called object is not a function or function pointer

From: Paul E. McKenney
Date: Tue Dec 29 2020 - 11:30:44 EST


On Tue, Dec 29, 2020 at 11:28:26AM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev.2020.12.15b
> head: f895a17eec290b0038a6294d884a9cc92d7d6e80
> commit: 7655dc620982c6505386efdaf975e6bde3c27afb [130/134] rcu-tasks: Use NULL pointer instead of empty show_rcu_tasks_*() functions
> config: ia64-randconfig-r012-20201217 (attached as .config)
> compiler: ia64-linux-gcc (GCC) 9.3.0
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git/commit/?id=7655dc620982c6505386efdaf975e6bde3c27afb
> git remote add rcu https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git
> git fetch --no-tags rcu dev.2020.12.15b
> git checkout 7655dc620982c6505386efdaf975e6bde3c27afb
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=ia64
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@xxxxxxxxx>

This is fixed in -rcu by reverting 4cad23d7f4de ("rcu-tasks: Use NULL
pointer instead of empty show_rcu_tasks_*() functions"). Thank you for
your testing!

Thanx, Paul

> All errors (new ones prefixed by >>):
>
> In file included from arch/ia64/include/asm/pgtable.h:154,
> from include/linux/pgtable.h:6,
> from arch/ia64/include/asm/uaccess.h:40,
> from include/linux/uaccess.h:11,
> from arch/ia64/include/asm/sections.h:11,
> from include/linux/interrupt.h:20,
> from kernel/rcu/update.c:25:
> arch/ia64/include/asm/mmu_context.h: In function 'reload_context':
> arch/ia64/include/asm/mmu_context.h:137:41: warning: variable 'old_rr4' set but not used [-Wunused-but-set-variable]
> 137 | unsigned long rr0, rr1, rr2, rr3, rr4, old_rr4;
> | ^~~~~~~
> In file included from include/uapi/linux/posix_types.h:5,
> from include/uapi/linux/types.h:14,
> from include/linux/types.h:6,
> from kernel/rcu/update.c:20:
> kernel/rcu/tasks.h: In function 'show_rcu_tasks_gp_kthreads':
> >> include/linux/stddef.h:8:14: error: called object is not a function or function pointer
> 8 | #define NULL ((void *)0)
> | ^
> kernel/rcu/rcu.h:554:40: note: in expansion of macro 'NULL'
> 554 | #define show_rcu_tasks_rude_gp_kthread NULL
> | ^~~~
> kernel/rcu/tasks.h:1222:2: note: in expansion of macro 'show_rcu_tasks_rude_gp_kthread'
> 1222 | show_rcu_tasks_rude_gp_kthread();
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >> include/linux/stddef.h:8:14: error: called object is not a function or function pointer
> 8 | #define NULL ((void *)0)
> | ^
> kernel/rcu/rcu.h:559:41: note: in expansion of macro 'NULL'
> 559 | #define show_rcu_tasks_trace_gp_kthread NULL
> | ^~~~
> kernel/rcu/tasks.h:1223:2: note: in expansion of macro 'show_rcu_tasks_trace_gp_kthread'
> 1223 | show_rcu_tasks_trace_gp_kthread();
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
>
> vim +8 include/linux/stddef.h
>
> ^1da177e4c3f415 Linus Torvalds 2005-04-16 6
> ^1da177e4c3f415 Linus Torvalds 2005-04-16 7 #undef NULL
> ^1da177e4c3f415 Linus Torvalds 2005-04-16 @8 #define NULL ((void *)0)
> 6e2182874324727 Richard Knutsson 2006-09-30 9
>
> :::::: The code at line 8 was first introduced by commit
> :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
>
> :::::: TO: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx>
> :::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx>
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx