Re: kernel/trace/rv/monitors/wip/wip.c:20:1: sparse: sparse: symbol 'da_mon_wip' was not declared. Should it be static?

From: Steven Rostedt
Date: Sun Feb 05 2023 - 03:56:22 EST


On Sun, 5 Feb 2023 05:24:24 +0800
kernel test robot <lkp@xxxxxxxxx> wrote:

> Hi Stephen,

Who's "Stephen"?

>
> First bad commit (maybe != root cause):
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: db27c22251e7c8f3a9d5bfb55c9c8c701a70bbb3
> commit: 10bde81c74863472047f31304064018c40f488ee rv/monitor: Add the wip monitor
> date: 6 months ago
> config: csky-randconfig-s052-20230205 (https://download.01.org/0day-ci/archive/20230205/202302050517.4xtGBe0d-lkp@xxxxxxxxx/config)
> compiler: csky-linux-gcc (GCC) 12.1.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.4-39-gce1a6720-dirty
> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10bde81c74863472047f31304064018c40f488ee
> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> git fetch --no-tags linus master
> git checkout 10bde81c74863472047f31304064018c40f488ee
> # save the config file
> mkdir build_dir && cp config build_dir/.config
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=csky olddefconfig
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=csky SHELL=/bin/bash kernel/trace/rv/
>
> If you fix the issue, kindly add following tag where applicable
> | Reported-by: kernel test robot <lkp@xxxxxxxxx>
>
> sparse warnings: (new ones prefixed by >>)
> kernel/trace/rv/monitors/wip/wip.c: note: in included file:
> kernel/trace/rv/monitors/wip/wip.h:30:22: sparse: sparse: symbol 'automaton_wip' was not declared. Should it be static?
>

Line 30 in kernel/trace/rv/monitors/wip/wip.h is:

static const struct automaton_wip automaton_wip

Isn't it already static??

-- Steve

> vim +/da_mon_wip +20 kernel/trace/rv/monitors/wip/wip.c
>
> 8812d21219b9c6 Daniel Bristot de Oliveira 2022-07-29 18
> 8812d21219b9c6 Daniel Bristot de Oliveira 2022-07-29 @19 struct rv_monitor rv_wip;
> 8812d21219b9c6 Daniel Bristot de Oliveira 2022-07-29 @20 DECLARE_DA_MON_PER_CPU(wip, unsigned char);
> 8812d21219b9c6 Daniel Bristot de Oliveira 2022-07-29 21
>
> :::::: The code at line 20 was first introduced by commit
> :::::: 8812d21219b9c649dd25eb93915e00939944aeb7 rv/monitor: Add the wip monitor skeleton created by dot2k
>
> :::::: TO: Daniel Bristot de Oliveira <bristot@xxxxxxxxxx>
> :::::: CC: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
>