arch/mips/loongson64/smp.c:203:26: sparse: sparse: incorrect type in assignment (different address spaces)

From: kernel test robot
Date: Sat Jul 01 2023 - 19:03:29 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: dfab92f27c600fea3cadc6e2cb39f092024e1fef
commit: 5bd3990723bdf43333b2c268cc6644cb1961125b MIPS: Loongson64: Prefix ipi register address pointers with __iomem
date: 4 months ago
config: mips-randconfig-r081-20230702 (https://download.01.org/0day-ci/archive/20230702/202307020639.QCZOKp8B-lkp@xxxxxxxxx/config)
compiler: mips64el-linux-gcc (GCC) 12.3.0
reproduce: (https://download.01.org/0day-ci/archive/20230702/202307020639.QCZOKp8B-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202307020639.QCZOKp8B-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
>> arch/mips/loongson64/smp.c:203:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:203:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:203:26: sparse: got void *
arch/mips/loongson64/smp.c:205:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:205:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:205:26: sparse: got void *
arch/mips/loongson64/smp.c:207:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:207:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:207:26: sparse: got void *
arch/mips/loongson64/smp.c:209:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:209:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:209:26: sparse: got void *
arch/mips/loongson64/smp.c:211:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:211:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:211:26: sparse: got void *
arch/mips/loongson64/smp.c:213:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:213:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:213:26: sparse: got void *
arch/mips/loongson64/smp.c:215:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:215:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:215:26: sparse: got void *
arch/mips/loongson64/smp.c:217:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:217:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:217:26: sparse: got void *
arch/mips/loongson64/smp.c:219:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:219:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:219:26: sparse: got void *
arch/mips/loongson64/smp.c:221:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:221:26: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:221:26: sparse: got void *
arch/mips/loongson64/smp.c:223:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:223:27: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:223:27: sparse: got void *
arch/mips/loongson64/smp.c:225:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:225:27: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:225:27: sparse: got void *
arch/mips/loongson64/smp.c:227:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:227:27: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:227:27: sparse: got void *
arch/mips/loongson64/smp.c:229:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:229:27: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:229:27: sparse: got void *
arch/mips/loongson64/smp.c:231:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:231:27: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:231:27: sparse: got void *
arch/mips/loongson64/smp.c:233:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:233:27: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:233:27: sparse: got void *
arch/mips/loongson64/smp.c:239:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:239:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:239:28: sparse: got void *
arch/mips/loongson64/smp.c:241:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:241:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:241:28: sparse: got void *
arch/mips/loongson64/smp.c:243:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:243:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:243:28: sparse: got void *
arch/mips/loongson64/smp.c:245:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:245:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:245:28: sparse: got void *
arch/mips/loongson64/smp.c:247:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:247:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:247:28: sparse: got void *
arch/mips/loongson64/smp.c:249:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:249:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:249:28: sparse: got void *
arch/mips/loongson64/smp.c:251:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:251:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:251:28: sparse: got void *
arch/mips/loongson64/smp.c:253:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:253:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:253:28: sparse: got void *
arch/mips/loongson64/smp.c:255:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:255:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:255:28: sparse: got void *
arch/mips/loongson64/smp.c:257:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:257:28: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:257:28: sparse: got void *
arch/mips/loongson64/smp.c:259:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:259:29: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:259:29: sparse: got void *
arch/mips/loongson64/smp.c:261:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:261:29: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:261:29: sparse: got void *
arch/mips/loongson64/smp.c:263:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:263:29: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:263:29: sparse: got void *
arch/mips/loongson64/smp.c:265:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:265:29: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:265:29: sparse: got void *
arch/mips/loongson64/smp.c:267:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:267:29: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:267:29: sparse: got void *
arch/mips/loongson64/smp.c:269:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:269:29: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:269:29: sparse: got void *
arch/mips/loongson64/smp.c:275:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:275:29: sparse: expected void [noderef] __iomem *
arch/mips/loongson64/smp.c:275:29: sparse: got void *
arch/mips/loongson64/smp.c:277:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem * @@ got void * @@
arch/mips/loongson64/smp.c:277:29: sparse: expected void [noderef] __iomem *

vim +203 arch/mips/loongson64/smp.c

ffe59ee36aaa83 arch/mips/loongson64/loongson-3/smp.c Huacai Chen 2019-09-21 200
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 201 static void ipi_set0_regs_init(void)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 202 {
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 @203 ipi_set0_regs[0] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 204 (SMP_CORE_GROUP0_BASE + SMP_CORE0_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 205 ipi_set0_regs[1] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 206 (SMP_CORE_GROUP0_BASE + SMP_CORE1_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 207 ipi_set0_regs[2] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 208 (SMP_CORE_GROUP0_BASE + SMP_CORE2_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 209 ipi_set0_regs[3] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 210 (SMP_CORE_GROUP0_BASE + SMP_CORE3_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 211 ipi_set0_regs[4] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 212 (SMP_CORE_GROUP1_BASE + SMP_CORE0_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 213 ipi_set0_regs[5] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 214 (SMP_CORE_GROUP1_BASE + SMP_CORE1_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 215 ipi_set0_regs[6] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 216 (SMP_CORE_GROUP1_BASE + SMP_CORE2_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 217 ipi_set0_regs[7] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 218 (SMP_CORE_GROUP1_BASE + SMP_CORE3_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 219 ipi_set0_regs[8] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 220 (SMP_CORE_GROUP2_BASE + SMP_CORE0_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 221 ipi_set0_regs[9] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 222 (SMP_CORE_GROUP2_BASE + SMP_CORE1_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 223 ipi_set0_regs[10] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 224 (SMP_CORE_GROUP2_BASE + SMP_CORE2_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 225 ipi_set0_regs[11] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 226 (SMP_CORE_GROUP2_BASE + SMP_CORE3_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 227 ipi_set0_regs[12] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 228 (SMP_CORE_GROUP3_BASE + SMP_CORE0_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 229 ipi_set0_regs[13] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 230 (SMP_CORE_GROUP3_BASE + SMP_CORE1_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 231 ipi_set0_regs[14] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 232 (SMP_CORE_GROUP3_BASE + SMP_CORE2_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 233 ipi_set0_regs[15] = (void *)
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 234 (SMP_CORE_GROUP3_BASE + SMP_CORE3_OFFSET + SET0);
e7841be50fe2b8 arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-06-26 235 }
300459d558725c arch/mips/loongson/loongson-3/smp.c Huacai Chen 2014-03-21 236

:::::: The code at line 203 was first introduced by commit
:::::: e7841be50fe2b8751a51a068b8cdcdcb6611e354 MIPS: Add Loongson-3B support

:::::: TO: Huacai Chen <chenhc@xxxxxxxxxx>
:::::: CC: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki