[avpatel:riscv_ipi_imp_v6 22/25] arch/riscv/kernel/smp.c:166:50: sparse: sparse: incorrect type in argument 4 (different address spaces)
From: kernel test robot
Date: Fri Apr 15 2022 - 22:38:50 EST
tree: https://github.com/avpatel/linux.git riscv_ipi_imp_v6
head: e487c9bc7306965b9292bbf33f2803873c8469df
commit: 4036f0abdcb31af010a56029747a02a7b21874d2 [22/25] RISC-V: Treat IPIs as normal Linux IRQs
config: riscv-randconfig-s031-20220414 (https://download.01.org/0day-ci/archive/20220416/202204161023.uhBiZbYE-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/4036f0abdcb31af010a56029747a02a7b21874d2
git remote add avpatel https://github.com/avpatel/linux.git
git fetch --no-tags avpatel riscv_ipi_imp_v6
git checkout 4036f0abdcb31af010a56029747a02a7b21874d2
# 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/ 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