[avpatel:riscv_kvm_aia_v1 18/38] arch/riscv/kernel/smp.c:166:50: sparse: sparse: incorrect type in argument 4 (different address spaces)

From: kernel test robot
Date: Wed Mar 23 2022 - 10:50:41 EST


tree: https://github.com/avpatel/linux.git riscv_kvm_aia_v1
head: bafeaefb38960799e1f7ac9b6707a22e5be067d0
commit: f6066acf07ddc4838b1115af3af24bb05ecf40dd [18/38] RISC-V: Treat IPIs as normal Linux IRQs
config: riscv-randconfig-s032-20220323 (https://download.01.org/0day-ci/archive/20220323/202203232238.QlIbLTI5-lkp@xxxxxxxxx/config)
compiler: riscv64-linux-gcc (GCC) 11.2.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-dirty
# https://github.com/avpatel/linux/commit/f6066acf07ddc4838b1115af3af24bb05ecf40dd
git remote add avpatel https://github.com/avpatel/linux.git
git fetch --no-tags avpatel riscv_kvm_aia_v1
git checkout f6066acf07ddc4838b1115af3af24bb05ecf40dd
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=riscv SHELL=/bin/bash arch/riscv/kernel/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>


sparse warnings: (new ones prefixed by >>)
>> arch/riscv/kernel/smp.c:166:50: sparse: sparse: incorrect type in argument 4 (different address spaces) @@ expected void [noderef] __percpu *percpu_dev_id @@ got int * @@
arch/riscv/kernel/smp.c:166:50: sparse: expected void [noderef] __percpu *percpu_dev_id
arch/riscv/kernel/smp.c:166:50: sparse: got int *

vim +166 arch/riscv/kernel/smp.c

151
152 void riscv_ipi_set_virq_range(int virq, int nr)
153 {
154 int i, err;
155
156 if (WARN_ON(ipi_virq_base))
157 return;
158
159 WARN_ON(nr < IPI_MAX);
160 nr_ipi = min(nr, IPI_MAX);
161 ipi_virq_base = virq;
162
163 /* Request IPIs */
164 for (i = 0; i < nr_ipi; i++) {
165 err = request_percpu_irq(ipi_virq_base + i, handle_IPI,
> 166 "IPI", &ipi_virq_base);
167 WARN_ON(err);
168
169 ipi_desc[i] = irq_to_desc(ipi_virq_base + i);
170 irq_set_status_flags(ipi_virq_base + i, IRQ_HIDDEN);
171 }
172
173 /* Enabled IPIs for boot CPU immediately */
174 riscv_ipi_enable();
175 }
176 EXPORT_SYMBOL_GPL(riscv_ipi_set_virq_range);
177

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