drivers/mtd/devices/phram.c:85:34: sparse: sparse: incorrect type in argument 1 (different address spaces)

From: kernel test robot
Date: Sat Jun 27 2020 - 16:11:25 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4e99b32169e84b4ece5a1d74eb0b7e4ef07866b3
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 9 days ago
config: parisc-randconfig-s032-20200628 (attached as .config)
compiler: hppa64-linux-gcc (GCC) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
make W=1 C=1 ARCH=parisc CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

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


sparse warnings: (new ones prefixed by >>)

>> drivers/mtd/devices/phram.c:85:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *priv @@
>> drivers/mtd/devices/phram.c:85:34: sparse: expected void const volatile [noderef] __iomem *addr
drivers/mtd/devices/phram.c:85:34: sparse: got void *priv
drivers/mtd/devices/phram.c:101:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *priv @@ got void [noderef] __iomem * @@
drivers/mtd/devices/phram.c:101:23: sparse: expected void *priv
drivers/mtd/devices/phram.c:101:23: sparse: got void [noderef] __iomem *
drivers/mtd/devices/phram.c:131:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void *priv @@
drivers/mtd/devices/phram.c:131:25: sparse: expected void const volatile [noderef] __iomem *addr
drivers/mtd/devices/phram.c:131:25: sparse: got void *priv

vim +85 drivers/mtd/devices/phram.c

^1da177e4c3f41 Linus Torvalds 2005-04-16 78
^1da177e4c3f41 Linus Torvalds 2005-04-16 79 static void unregister_devices(void)
^1da177e4c3f41 Linus Torvalds 2005-04-16 80 {
d30f11d22549c5 Joern Engel 2005-02-23 81 struct phram_mtd_list *this, *safe;
^1da177e4c3f41 Linus Torvalds 2005-04-16 82
d30f11d22549c5 Joern Engel 2005-02-23 83 list_for_each_entry_safe(this, safe, &phram_list, list) {
ee0e87b174bb41 Jamie Iles 2011-05-23 84 mtd_device_unregister(&this->mtd);
^1da177e4c3f41 Linus Torvalds 2005-04-16 @85 iounmap(this->mtd.priv);
f17f12ce9dd6ec Mathias Krause 2011-01-30 86 kfree(this->mtd.name);
^1da177e4c3f41 Linus Torvalds 2005-04-16 87 kfree(this);
^1da177e4c3f41 Linus Torvalds 2005-04-16 88 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 89 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 90

:::::: The code at line 85 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

Attachment: .config.gz
Description: application/gzip