[alexshi:lrunext 26/26] mm/swap.c:978:17: warning: Assigning a pointer to an integer is not portable.
by kernel test robot
tree: https://github.com/alexshi/linux.git lrunext
head: bce140319525ff5debbc025f48526e28d98faddf
commit: bce140319525ff5debbc025f48526e28d98faddf [26/26] mm/swap.c: optimizing __pagevec_lru_add lru_lock
compiler: c6x-elf-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> mm/swap.c:978:17: warning: Assigning a pointer to an integer is not portable. [AssignmentAddressToInteger]
for (i = total = lruvecs.vecs[0] = 0; i < pagevec_count(pvec); i++) {
^
vim +978 mm/swap.c
965
966 /*
967 * Add the passed pages to the LRU, then drop the caller's refcount
968 * on them. Reinitialises the caller's pagevec.
969 */
970 void __pagevec_lru_add(struct pagevec *pvec)
971 {
972 int i, j, total;
973 struct lruvec *lruvec = NULL;
974 unsigned long flags = 0;
975 struct page *page;
976 struct add_lruvecs lruvecs;
977
> 978 for (i = total = lruvecs.vecs[0] = 0; i < pagevec_count(pvec); i++) {
979 page = pvec->pages[i];
980 lruvec = mem_cgroup_page_lruvec(page, page_pgdat(page));
981
982 /* Try to find a same lruvec */
983 for (j = 0; j <= total; j++)
984 if (lruvec == lruvecs.vecs[j])
985 break;
986 /* A new lruvec */
987 if (j > total) {
988 INIT_LIST_HEAD(&lruvecs.lists[total]);
989 lruvecs.vecs[total] = lruvec;
990 j = total++;
991 lruvecs.vecs[total] = 0;
992 }
993
994 list_add(&page->lru, &lruvecs.lists[j]);
995 }
996
997 for (i = 0; i < total; i++) {
998 spin_lock_irqsave(&lruvecs.vecs[i]->lru_lock, flags);
999 while (!list_empty(&lruvecs.lists[i])) {
1000 page = lru_to_page(&lruvecs.lists[i]);
1001 list_del(&page->lru);
1002 __pagevec_lru_add_fn(page, lruvecs.vecs[i]);
1003 }
1004 spin_unlock_irqrestore(&lruvecs.vecs[i]->lru_lock, flags);
1005 }
1006
1007 release_pages(pvec->pages, pvec->nr);
1008 pagevec_reinit(pvec);
1009 }
1010
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
[lkundrak-linux-mmp:lr/ariel 46/47] sound/soc/codecs/88ce156-codec.c:609:5: warning: variable 'tmp' set but not used
by kernel test robot
tree: git://git.kernel.org/pub/scm/linux/kernel/git/lkundrak/linux-mmp.git lr/ariel
head: 73445da5e9a64e43f1b5edd600e2f918150b53ba
commit: a045602ba0afc9f73a077d775a67669867caa5ff [46/47] xlala
config: nios2-allyesconfig (attached as .config)
compiler: nios2-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout a045602ba0afc9f73a077d775a67669867caa5ff
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nios2
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
sound/soc/codecs/88ce156-codec.c:206:5: warning: no previous prototype for 'ce156_set_sample_rate' [-Wmissing-prototypes]
206 | int ce156_set_sample_rate(struct snd_soc_dai *codec_dai,
| ^~~~~~~~~~~~~~~~~~~~~
sound/soc/codecs/88ce156-codec.c: In function 'ce156_left_mute_mode_set':
>> sound/soc/codecs/88ce156-codec.c:609:5: warning: variable 'tmp' set but not used [-Wunused-but-set-variable]
609 | u8 tmp = 0;
| ^~~
At top level:
sound/soc/codecs/88ce156-codec.c:508:27: warning: 'dac_gain_tlv' defined but not used [-Wunused-const-variable=]
508 | static const unsigned int dac_gain_tlv[] = {
| ^~~~~~~~~~~~
sound/soc/codecs/88ce156-codec.c:470:27: warning: 'adc_pga_tlv' defined but not used [-Wunused-const-variable=]
470 | static const unsigned int adc_pga_tlv[] = {
| ^~~~~~~~~~~
vim +/tmp +609 sound/soc/codecs/88ce156-codec.c
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 604
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 605 static int ce156_left_mute_mode_set(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 606 {
d769184b930fbeb Lubomir Rintel 2020-05-24 607 struct snd_soc_component *component = snd_kcontrol_chip(kcontrol);
f09b83326cd3eb7 Lubomir Rintel 2020-08-09 608 u8 mute_reg = snd_soc_component_read(component, CE156_DAC_ANA_ENABLE) & 0xff;
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 @609 u8 tmp = 0;
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 610
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 611 if( ucontrol->value.integer.value[0] == 1 ) {
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 612 tmp = LEFT_HEADPHONE_PA_ENABLE;
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 613 mute_reg &= ~(LEFT_HEADPHONE_PA_ENABLE);
4cf5fac3c86fb2f Lubomir Rintel 2020-05-24 614 snd_soc_component_write(component, CE156_DAC_ANA_ENABLE, mute_reg);
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 615 }
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 616 else if( ucontrol->value.integer.value[0] == 0 ) {
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 617 mute_reg |= LEFT_HEADPHONE_PA_ENABLE;
4cf5fac3c86fb2f Lubomir Rintel 2020-05-24 618 snd_soc_component_write(component, CE156_DAC_ANA_ENABLE, mute_reg);
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 619 }
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 620
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 621 return 0;
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 622 }
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 623 #endif
a8b63ee04cb47e0 Lubomir Rintel 2020-05-24 624
:::::: The code at line 609 was first introduced by commit
:::::: a8b63ee04cb47e08bb80bb23d9e04969979000c8 XXX 88CE156
:::::: TO: Lubomir Rintel <lkundrak(a)v3.sk>
:::::: CC: Lubomir Rintel <lkundrak(a)v3.sk>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
drivers/net/arcnet/com90io.c:251:9: sparse: sparse: cast removes address space '__iomem' of expression
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fc80c51fd4b23ec007e88d4c688f2cac1b8648e7
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 8 weeks ago
config: riscv-randconfig-s031-20200810 (attached as .config)
compiler: riscv64-linux-gcc (GCC) 9.3.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.2-118-ge1578773-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=riscv
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/net/arcnet/com90io.c:251:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/net/arcnet/com90io.c:251:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> drivers/net/arcnet/com90io.c:251:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:251:9: sparse: got void *
drivers/net/arcnet/com90io.c:259:17: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/net/arcnet/com90io.c:259:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> drivers/net/arcnet/com90io.c:259:17: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:259:17: sparse: got void *
drivers/net/arcnet/com90io.c:259:17: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:259:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:259:17: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:259:17: sparse: got void *
drivers/net/arcnet/com90io.c:315:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:315:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:315:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:315:9: sparse: got void *
drivers/net/arcnet/com90io.c:322:16: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:322:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:322:16: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:322:16: sparse: got void *
drivers/net/arcnet/com90io.c:329:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:329:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:329:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:329:9: sparse: got void *
drivers/net/arcnet/com90io.c:284:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:284:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:284:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:284:9: sparse: got void *
drivers/net/arcnet/com90io.c:284:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:284:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:284:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:284:9: sparse: got void *
drivers/net/arcnet/com90io.c:284:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:284:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:284:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:284:9: sparse: got void *
drivers/net/arcnet/com90io.c:289:17: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:289:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:289:17: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:289:17: sparse: got void *
drivers/net/arcnet/com90io.c:294:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:294:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:294:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:294:9: sparse: got void *
drivers/net/arcnet/com90io.c:296:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:296:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:296:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:296:9: sparse: got void *
drivers/net/arcnet/com90io.c:298:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:298:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:298:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:298:9: sparse: got void *
drivers/net/arcnet/com90io.c:306:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:306:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:306:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:306:9: sparse: got void *
drivers/net/arcnet/com90io.c:75:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:75:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:75:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:75:9: sparse: got void *
drivers/net/arcnet/com90io.c:76:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:76:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:76:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:76:9: sparse: got void *
drivers/net/arcnet/com90io.c:78:16: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:78:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:78:16: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:78:16: sparse: got void *
drivers/net/arcnet/com90io.c:100:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:100:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:100:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:100:9: sparse: got void *
drivers/net/arcnet/com90io.c:101:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:101:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:101:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:101:9: sparse: got void *
drivers/net/arcnet/com90io.c:107:29: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:107:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:107:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:107:29: sparse: got void *
drivers/net/arcnet/com90io.c:116:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:116:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:116:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:116:9: sparse: got void *
drivers/net/arcnet/com90io.c:117:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:117:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:117:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:117:9: sparse: got void *
drivers/net/arcnet/com90io.c:123:17: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:123:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:123:17: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:123:17: sparse: got void *
drivers/net/arcnet/com90io.c:149:13: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:149:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:149:13: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:149:13: sparse: got void *
drivers/net/arcnet/com90io.c:154:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:154:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:154:9: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:154:9: sparse: got void *
drivers/net/arcnet/com90io.c:157:18: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:157:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:157:18: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/arcnet/com90io.c:157:18: sparse: got void *
drivers/net/arcnet/com90io.c:166:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/arcnet/com90io.c:166:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/arcnet/com90io.c:166:9: sparse: expected void volatile [noderef] __iomem *addr
--
>> drivers/net/wireless/wl3501_cs.c:204:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/net/wireless/wl3501_cs.c:204:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> drivers/net/wireless/wl3501_cs.c:204:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:204:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:205:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:205:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:205:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:205:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:206:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:206:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:206:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:206:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:210:29: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/net/wireless/wl3501_cs.c:210:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> drivers/net/wireless/wl3501_cs.c:210:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:210:29: sparse: got void *
drivers/net/wireless/wl3501_cs.c:212:29: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:212:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:212:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:212:29: sparse: got void *
drivers/net/wireless/wl3501_cs.c:214:29: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:214:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:214:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:214:29: sparse: got void *
drivers/net/wireless/wl3501_cs.c:216:29: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:216:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:216:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:216:29: sparse: got void *
drivers/net/wireless/wl3501_cs.c:218:29: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:218:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:218:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:218:29: sparse: got void *
drivers/net/wireless/wl3501_cs.c:220:29: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:220:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:220:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:220:29: sparse: got void *
drivers/net/wireless/wl3501_cs.c:222:28: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:222:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:222:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:222:28: sparse: got void *
drivers/net/wireless/wl3501_cs.c:224:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:224:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:224:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:224:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:225:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:225:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:225:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:225:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:226:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:226:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:226:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:226:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:228:28: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:228:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:228:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:228:28: sparse: got void *
drivers/net/wireless/wl3501_cs.c:230:28: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:230:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:230:28: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:230:28: sparse: got void *
drivers/net/wireless/wl3501_cs.c:253:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:253:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:253:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:253:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:254:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:254:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:254:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:254:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:275:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:275:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:275:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:275:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:276:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:276:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:276:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:276:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:730:18: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:730:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:730:18: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:730:18: sparse: got void *
drivers/net/wireless/wl3501_cs.c:734:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:734:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:734:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:734:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:747:18: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:747:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:747:18: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:747:18: sparse: got void *
drivers/net/wireless/wl3501_cs.c:751:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:751:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:751:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:751:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:190:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:190:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:190:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:190:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:190:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:190:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:190:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:190:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:190:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:190:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:190:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:190:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c:1108:9: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/wl3501_cs.c:1108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/wl3501_cs.c:1108:9: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/wl3501_cs.c:1108:9: sparse: got void *
drivers/net/wireless/wl3501_cs.c: note: in included file (through arch/riscv/include/asm/io.h, include/linux/io.h, include/linux/irq.h, ...):
include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space '__iomem' of expression
include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
include/asm-generic/io.h:580:9: sparse: expected void volatile [noderef] __iomem *addr
include/asm-generic/io.h:580:9: sparse: got void *
include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space '__iomem' of expression
include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
--
>> sound/pcmcia/vx/vxp_ops.c:50:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/vx/vxp_ops.c:50:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/vx/vxp_ops.c:50:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/vx/vxp_ops.c:50:16: sparse: got void *
sound/pcmcia/vx/vxp_ops.c:60:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/vx/vxp_ops.c:60:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/vx/vxp_ops.c:60:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/vx/vxp_ops.c:60:9: sparse: got void *
sound/pcmcia/vx/vxp_ops.c:365:25: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/vx/vxp_ops.c:365:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/vx/vxp_ops.c:365:25: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/vx/vxp_ops.c:365:25: sparse: got void *
sound/pcmcia/vx/vxp_ops.c:375:17: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/vx/vxp_ops.c:375:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/vx/vxp_ops.c:375:17: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/vx/vxp_ops.c:375:17: sparse: got void *
sound/pcmcia/vx/vxp_ops.c:407:35: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/vx/vxp_ops.c:407:35: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/vx/vxp_ops.c:407:35: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/vx/vxp_ops.c:407:35: sparse: got void *
sound/pcmcia/vx/vxp_ops.c:415:27: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/vx/vxp_ops.c:415:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/vx/vxp_ops.c:415:27: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/vx/vxp_ops.c:415:27: sparse: got void *
sound/pcmcia/vx/vxp_ops.c:420:17: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/vx/vxp_ops.c:420:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/vx/vxp_ops.c:420:17: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/vx/vxp_ops.c:420:17: sparse: got void *
--
>> sound/pcmcia/pdaudiocf/pdaudiocf_core.c:58:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf_core.c:58:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf_core.c:58:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:58:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:66:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf_core.c:66:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf_core.c:66:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:66:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:239:15: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:239:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:239:15: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:239:15: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:241:9: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:241:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:241:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:241:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:253:15: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:253:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:253:15: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:253:15: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:255:9: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:255:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:255:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_core.c:255:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_core.c: note: in included file:
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
--
>> sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:27:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:27:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:27:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:27:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:258:15: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:258:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:258:15: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:258:15: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:259:15: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:259:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:259:15: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:259:15: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:129:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:129:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:129:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:129:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:130:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:130:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:130:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:130:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:131:17: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:131:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:131:17: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:131:17: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:161:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:161:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:161:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:161:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:162:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:162:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:162:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:162:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:163:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:163:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:163:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:163:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:145:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:145:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:145:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:145:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:146:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:146:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:146:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:146:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:147:17: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:147:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:147:17: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:147:17: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:181:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:181:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:181:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:181:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:182:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:182:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:182:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:182:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:183:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:183:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:183:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:183:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:44:26: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:44:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:44:26: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:44:26: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:45:17: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:45:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:45:17: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:45:17: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:54:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:54:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:54:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:54:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:55:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:55:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:55:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:55:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:56:17: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:56:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:56:17: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:56:17: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:64:26: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:64:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:64:26: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:64:26: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:65:26: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:65:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:65:26: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:65:26: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:74:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:74:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:74:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:74:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:75:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:75:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:75:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:75:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:76:24: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:76:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:76:24: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:76:24: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:85:26: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:85:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_irq.c:85:26: sparse: expected void const volatile [noderef] __iomem *addr
--
>> sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:55: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:55: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:55: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:23:55: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:26:17: sparse: sparse: cast removes address space '__iomem' of expression
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:26:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:26:17: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c:26:17: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf_pcm.c: note: in included file:
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: expected void const volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:113:16: sparse: got void *
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: expected void volatile [noderef] __iomem *addr
sound/pcmcia/pdaudiocf/pdaudiocf.h:108:9: sparse: got void *
--
>> drivers/net/wireless/cisco/airo.c:3551:17: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/net/wireless/cisco/airo.c:3551:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
>> drivers/net/wireless/cisco/airo.c:3551:17: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/cisco/airo.c:3551:17: sparse: got void *
drivers/net/wireless/cisco/airo.c:3553:17: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/cisco/airo.c:3553:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/cisco/airo.c:3553:17: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/cisco/airo.c:3553:17: sparse: got void *
drivers/net/wireless/cisco/airo.c:3554:17: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/cisco/airo.c:3554:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/cisco/airo.c:3554:17: sparse: expected void volatile [noderef] __iomem *addr
drivers/net/wireless/cisco/airo.c:3554:17: sparse: got void *
drivers/net/wireless/cisco/airo.c:3564:22: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/net/wireless/cisco/airo.c:3564:22: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
>> drivers/net/wireless/cisco/airo.c:3564:22: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/cisco/airo.c:3564:22: sparse: got void *
drivers/net/wireless/cisco/airo.c:3566:22: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/cisco/airo.c:3566:22: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/cisco/airo.c:3566:22: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/cisco/airo.c:3566:22: sparse: got void *
drivers/net/wireless/cisco/airo.c:3567:29: sparse: sparse: cast removes address space '__iomem' of expression
drivers/net/wireless/cisco/airo.c:3567:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/net/wireless/cisco/airo.c:3567:29: sparse: expected void const volatile [noderef] __iomem *addr
drivers/net/wireless/cisco/airo.c:3567:29: sparse: got void *
drivers/net/wireless/cisco/airo.c:3879:35: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:3879:35: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:3879:35: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:2050:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] status @@ got unsigned short [usertype] status @@
drivers/net/wireless/cisco/airo.c:2050:24: sparse: expected restricted __le16 [usertype] status
drivers/net/wireless/cisco/airo.c:2050:24: sparse: got unsigned short [usertype] status
drivers/net/wireless/cisco/airo.c:3250:18: sparse: sparse: cast to restricted __le16
drivers/net/wireless/cisco/airo.c:4889:51: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:4889:51: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:4889:51: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:4892:51: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:4892:51: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:4892:51: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:4895:51: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:4895:51: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:4895:51: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6363:46: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6363:46: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6363:46: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6383:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6383:38: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6383:38: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6385:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6385:38: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6385:38: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6387:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6387:38: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6387:38: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6543:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6543:38: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6543:38: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6545:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6545:38: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6545:38: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6547:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6547:38: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6547:38: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6652:54: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6652:54: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6652:54: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6654:46: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6654:46: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6654:46: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:6664:54: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int auth_type @@ got restricted __le16 [usertype] @@
drivers/net/wireless/cisco/airo.c:6664:54: sparse: expected int auth_type
drivers/net/wireless/cisco/airo.c:6664:54: sparse: got restricted __le16 [usertype]
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3797:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] authType @@ got int auth_type @@
drivers/net/wireless/cisco/airo.c:3797:32: sparse: expected restricted __le16 [usertype] authType
drivers/net/wireless/cisco/airo.c:3797:32: sparse: got int auth_type
drivers/net/wireless/cisco/airo.c:3801:26: sparse: sparse: restricted __le16 degrades to integer
drivers/net/wireless/cisco/airo.c:3801:52: sparse: sparse: restricted __le16 degrades to integer
vim +/__iomem +251 drivers/net/arcnet/com90io.c
^1da177e4c3f41 Linus Torvalds 2005-04-16 217
^1da177e4c3f41 Linus Torvalds 2005-04-16 218 /* Set up the struct net_device associated with this card. Called after
^1da177e4c3f41 Linus Torvalds 2005-04-16 219 * probing succeeds.
^1da177e4c3f41 Linus Torvalds 2005-04-16 220 */
^1da177e4c3f41 Linus Torvalds 2005-04-16 221 static int __init com90io_found(struct net_device *dev)
^1da177e4c3f41 Linus Torvalds 2005-04-16 222 {
^1da177e4c3f41 Linus Torvalds 2005-04-16 223 struct arcnet_local *lp;
^1da177e4c3f41 Linus Torvalds 2005-04-16 224 int ioaddr = dev->base_addr;
^1da177e4c3f41 Linus Torvalds 2005-04-16 225 int err;
^1da177e4c3f41 Linus Torvalds 2005-04-16 226
^1da177e4c3f41 Linus Torvalds 2005-04-16 227 /* Reserve the irq */
d6d7d3ed56e3bf Joe Perches 2015-05-05 228 if (request_irq(dev->irq, arcnet_interrupt, 0,
d6d7d3ed56e3bf Joe Perches 2015-05-05 229 "arcnet (COM90xx-IO)", dev)) {
a34c0932c3b2f2 Joe Perches 2015-05-05 230 arc_printk(D_NORMAL, dev, "Can't get IRQ %d!\n", dev->irq);
^1da177e4c3f41 Linus Torvalds 2005-04-16 231 return -ENODEV;
^1da177e4c3f41 Linus Torvalds 2005-04-16 232 }
fb911ee849756f Peter Osterlund 2005-09-13 233 /* Reserve the I/O region */
d6d7d3ed56e3bf Joe Perches 2015-05-05 234 if (!request_region(dev->base_addr, ARCNET_TOTAL_SIZE,
d6d7d3ed56e3bf Joe Perches 2015-05-05 235 "arcnet (COM90xx-IO)")) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 236 free_irq(dev->irq, dev);
^1da177e4c3f41 Linus Torvalds 2005-04-16 237 return -EBUSY;
^1da177e4c3f41 Linus Torvalds 2005-04-16 238 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 239
454d7c9b14e20f Wang Chen 2008-11-12 240 lp = netdev_priv(dev);
^1da177e4c3f41 Linus Torvalds 2005-04-16 241 lp->card_name = "COM90xx I/O";
^1da177e4c3f41 Linus Torvalds 2005-04-16 242 lp->hw.command = com90io_command;
^1da177e4c3f41 Linus Torvalds 2005-04-16 243 lp->hw.status = com90io_status;
^1da177e4c3f41 Linus Torvalds 2005-04-16 244 lp->hw.intmask = com90io_setmask;
^1da177e4c3f41 Linus Torvalds 2005-04-16 245 lp->hw.reset = com90io_reset;
^1da177e4c3f41 Linus Torvalds 2005-04-16 246 lp->hw.owner = THIS_MODULE;
^1da177e4c3f41 Linus Torvalds 2005-04-16 247 lp->hw.copy_to_card = com90io_copy_to_card;
^1da177e4c3f41 Linus Torvalds 2005-04-16 248 lp->hw.copy_from_card = com90io_copy_from_card;
^1da177e4c3f41 Linus Torvalds 2005-04-16 249
^1da177e4c3f41 Linus Torvalds 2005-04-16 250 lp->config = (0x16 | IOMAPflag) & ~ENABLE16flag;
f0b9c27c0c933a Joe Perches 2015-05-05 @251 arcnet_outb(lp->config, ioaddr, COM9026_REG_RW_CONFIG);
^1da177e4c3f41 Linus Torvalds 2005-04-16 252
^1da177e4c3f41 Linus Torvalds 2005-04-16 253 /* get and check the station ID from offset 1 in shmem */
^1da177e4c3f41 Linus Torvalds 2005-04-16 254
^1da177e4c3f41 Linus Torvalds 2005-04-16 255 dev->dev_addr[0] = get_buffer_byte(dev, 1);
^1da177e4c3f41 Linus Torvalds 2005-04-16 256
^1da177e4c3f41 Linus Torvalds 2005-04-16 257 err = register_netdev(dev);
^1da177e4c3f41 Linus Torvalds 2005-04-16 258 if (err) {
f0b9c27c0c933a Joe Perches 2015-05-05 @259 arcnet_outb(arcnet_inb(ioaddr, COM9026_REG_RW_CONFIG) & ~IOMAPflag,
f0b9c27c0c933a Joe Perches 2015-05-05 260 ioaddr, COM9026_REG_RW_CONFIG);
^1da177e4c3f41 Linus Torvalds 2005-04-16 261 free_irq(dev->irq, dev);
^1da177e4c3f41 Linus Torvalds 2005-04-16 262 release_region(dev->base_addr, ARCNET_TOTAL_SIZE);
^1da177e4c3f41 Linus Torvalds 2005-04-16 263 return err;
^1da177e4c3f41 Linus Torvalds 2005-04-16 264 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 265
a34c0932c3b2f2 Joe Perches 2015-05-05 266 arc_printk(D_NORMAL, dev, "COM90IO: station %02Xh found at %03lXh, IRQ %d.\n",
^1da177e4c3f41 Linus Torvalds 2005-04-16 267 dev->dev_addr[0], dev->base_addr, dev->irq);
^1da177e4c3f41 Linus Torvalds 2005-04-16 268
^1da177e4c3f41 Linus Torvalds 2005-04-16 269 return 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 270 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 271
:::::: The code at line 251 was first introduced by commit
:::::: f0b9c27c0c933a6545ea57d4edbc56a4db435c84 arcnet: com90io: Use arcnet_<I/O> routines
:::::: TO: Joe Perches <joe(a)perches.com>
:::::: CC: Michael Grzeschik <m.grzeschik(a)pengutronix.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
fs/init.c:72:8: warning: Variable 'error' is reassigned a value before the old one has been used.
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 30185b69a2d533c4ba6ca926b8390ce7de495e29
commit: 4b7ca5014cbef51cdb99fd644eae4f3773747a05 init: add an init_chroot helper
date: 8 days ago
compiler: hppa-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> fs/init.c:72:8: warning: Variable 'error' is reassigned a value before the old one has been used. [redundantAssignment]
error = security_path_chroot(&path);
^
fs/init.c:69:8: note: Variable 'error' is reassigned a value before the old one has been used.
error = -EPERM;
^
fs/init.c:72:8: note: Variable 'error' is reassigned a value before the old one has been used.
error = security_path_chroot(&path);
^
vim +/error +72 fs/init.c
57
58 int __init init_chroot(const char *filename)
59 {
60 struct path path;
61 int error;
62
63 error = kern_path(filename, LOOKUP_FOLLOW | LOOKUP_DIRECTORY, &path);
64 if (error)
65 return error;
66 error = inode_permission(path.dentry->d_inode, MAY_EXEC | MAY_CHDIR);
67 if (error)
68 goto dput_and_out;
69 error = -EPERM;
70 if (!ns_capable(current_user_ns(), CAP_SYS_CHROOT))
71 goto dput_and_out;
> 72 error = security_path_chroot(&path);
73 if (error)
74 goto dput_and_out;
75 set_fs_root(current->fs, &path);
76 dput_and_out:
77 path_put(&path);
78 return error;
79 }
80
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
fs/fuse/virtio_fs.c:1009:6: warning: Variable 'err' is reassigned a value before the old one has been used.
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fffe3ae0ee84e25d2befe2ae59bc32aa2b6bc77b
commit: a62a8ef9d97da23762a588592c8b8eb50a8deb6a virtio-fs: add virtiofs filesystem
date: 11 months ago
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> fs/fuse/virtio_fs.c:1009:6: warning: Variable 'err' is reassigned a value before the old one has been used. [redundantAssignment]
err = -ENOMEM;
^
fs/fuse/virtio_fs.c:1003:6: note: Variable 'err' is reassigned a value before the old one has been used.
err = -EINVAL;
^
fs/fuse/virtio_fs.c:1009:6: note: Variable 'err' is reassigned a value before the old one has been used.
err = -ENOMEM;
^
fs/fuse/virtio_fs.c:1020:6: warning: Variable 'err' is reassigned a value before the old one has been used. [redundantAssignment]
err = fuse_fill_super_common(sb, &ctx);
^
fs/fuse/virtio_fs.c:1009:6: note: Variable 'err' is reassigned a value before the old one has been used.
err = -ENOMEM;
^
fs/fuse/virtio_fs.c:1020:6: note: Variable 'err' is reassigned a value before the old one has been used.
err = fuse_fill_super_common(sb, &ctx);
^
vim +/err +1009 fs/fuse/virtio_fs.c
979
980 static int virtio_fs_fill_super(struct super_block *sb)
981 {
982 struct fuse_conn *fc = get_fuse_conn_super(sb);
983 struct virtio_fs *fs = fc->iq.priv;
984 unsigned int i;
985 int err;
986 struct fuse_fs_context ctx = {
987 .rootmode = S_IFDIR,
988 .default_permissions = 1,
989 .allow_other = 1,
990 .max_read = UINT_MAX,
991 .blksize = 512,
992 .destroy = true,
993 .no_control = true,
994 .no_force_umount = true,
995 };
996
997 mutex_lock(&virtio_fs_mutex);
998
999 /* After holding mutex, make sure virtiofs device is still there.
1000 * Though we are holding a reference to it, drive ->remove might
1001 * still have cleaned up virtual queues. In that case bail out.
1002 */
1003 err = -EINVAL;
1004 if (list_empty(&fs->list)) {
1005 pr_info("virtio-fs: tag <%s> not found\n", fs->tag);
1006 goto err;
1007 }
1008
> 1009 err = -ENOMEM;
1010 /* Allocate fuse_dev for hiprio and notification queues */
1011 for (i = 0; i < VQ_REQUEST; i++) {
1012 struct virtio_fs_vq *fsvq = &fs->vqs[i];
1013
1014 fsvq->fud = fuse_dev_alloc();
1015 if (!fsvq->fud)
1016 goto err_free_fuse_devs;
1017 }
1018
1019 ctx.fudptr = (void **)&fs->vqs[VQ_REQUEST].fud;
1020 err = fuse_fill_super_common(sb, &ctx);
1021 if (err < 0)
1022 goto err_free_fuse_devs;
1023
1024 fc = fs->vqs[VQ_REQUEST].fud->fc;
1025
1026 for (i = 0; i < fs->nvqs; i++) {
1027 struct virtio_fs_vq *fsvq = &fs->vqs[i];
1028
1029 if (i == VQ_REQUEST)
1030 continue; /* already initialized */
1031 fuse_dev_install(fsvq->fud, fc);
1032 }
1033
1034 /* Previous unmount will stop all queues. Start these again */
1035 virtio_fs_start_all_queues(fs);
1036 fuse_send_init(fc);
1037 mutex_unlock(&virtio_fs_mutex);
1038 return 0;
1039
1040 err_free_fuse_devs:
1041 virtio_fs_free_devs(fs);
1042 err:
1043 mutex_unlock(&virtio_fs_mutex);
1044 return err;
1045 }
1046
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
[jirislaby:devel 26/50] arch/arm64/mm/mmu.c:1139:9: sparse: sparse: too long token expansion
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git devel
head: 71b38dd283effd396065b74b8c018796814c9eae
commit: 7e4c6d6b915b334cbadca150acdd8ea8fdd645e6 [26/50] include condition in the BUG_ON/WARN_ON output
config: arm64-randconfig-s031-20200810 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.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.2-118-ge1578773-dirty
git checkout 7e4c6d6b915b334cbadca150acdd8ea8fdd645e6
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> arch/arm64/mm/mmu.c:1139:9: sparse: sparse: too long token expansion
vim +1139 arch/arm64/mm/mmu.c
bbd6ec605c0fc2 Anshuman Khandual 2020-03-04 1085
c1cc1552616d0f Catalin Marinas 2012-03-05 1086 #ifdef CONFIG_SPARSEMEM_VMEMMAP
b433dce056d381 Suzuki K. Poulose 2015-10-19 1087 #if !ARM64_SWAPPER_USES_SECTION_MAPS
7b73d978a5d0d2 Christoph Hellwig 2017-12-29 1088 int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node,
7b73d978a5d0d2 Christoph Hellwig 2017-12-29 1089 struct vmem_altmap *altmap)
c1cc1552616d0f Catalin Marinas 2012-03-05 1090 {
eee07935bb52a0 Anshuman Khandual 2020-08-06 1091 return vmemmap_populate_basepages(start, end, node, altmap);
c1cc1552616d0f Catalin Marinas 2012-03-05 1092 }
b433dce056d381 Suzuki K. Poulose 2015-10-19 1093 #else /* !ARM64_SWAPPER_USES_SECTION_MAPS */
7b73d978a5d0d2 Christoph Hellwig 2017-12-29 1094 int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node,
7b73d978a5d0d2 Christoph Hellwig 2017-12-29 1095 struct vmem_altmap *altmap)
c1cc1552616d0f Catalin Marinas 2012-03-05 1096 {
0aad818b2de455 Johannes Weiner 2013-04-29 1097 unsigned long addr = start;
c1cc1552616d0f Catalin Marinas 2012-03-05 1098 unsigned long next;
20a004e7b017cc Will Deacon 2018-02-15 1099 pgd_t *pgdp;
e9f6376858b979 Mike Rapoport 2020-06-04 1100 p4d_t *p4dp;
20a004e7b017cc Will Deacon 2018-02-15 1101 pud_t *pudp;
20a004e7b017cc Will Deacon 2018-02-15 1102 pmd_t *pmdp;
c1cc1552616d0f Catalin Marinas 2012-03-05 1103
c1cc1552616d0f Catalin Marinas 2012-03-05 1104 do {
c1cc1552616d0f Catalin Marinas 2012-03-05 1105 next = pmd_addr_end(addr, end);
c1cc1552616d0f Catalin Marinas 2012-03-05 1106
20a004e7b017cc Will Deacon 2018-02-15 1107 pgdp = vmemmap_pgd_populate(addr, node);
20a004e7b017cc Will Deacon 2018-02-15 1108 if (!pgdp)
c1cc1552616d0f Catalin Marinas 2012-03-05 1109 return -ENOMEM;
c1cc1552616d0f Catalin Marinas 2012-03-05 1110
e9f6376858b979 Mike Rapoport 2020-06-04 1111 p4dp = vmemmap_p4d_populate(pgdp, addr, node);
e9f6376858b979 Mike Rapoport 2020-06-04 1112 if (!p4dp)
e9f6376858b979 Mike Rapoport 2020-06-04 1113 return -ENOMEM;
e9f6376858b979 Mike Rapoport 2020-06-04 1114
e9f6376858b979 Mike Rapoport 2020-06-04 1115 pudp = vmemmap_pud_populate(p4dp, addr, node);
20a004e7b017cc Will Deacon 2018-02-15 1116 if (!pudp)
c1cc1552616d0f Catalin Marinas 2012-03-05 1117 return -ENOMEM;
c1cc1552616d0f Catalin Marinas 2012-03-05 1118
20a004e7b017cc Will Deacon 2018-02-15 1119 pmdp = pmd_offset(pudp, addr);
20a004e7b017cc Will Deacon 2018-02-15 1120 if (pmd_none(READ_ONCE(*pmdp))) {
c1cc1552616d0f Catalin Marinas 2012-03-05 1121 void *p = NULL;
c1cc1552616d0f Catalin Marinas 2012-03-05 1122
eee07935bb52a0 Anshuman Khandual 2020-08-06 1123 p = vmemmap_alloc_block_buf(PMD_SIZE, node, altmap);
c1cc1552616d0f Catalin Marinas 2012-03-05 1124 if (!p)
c1cc1552616d0f Catalin Marinas 2012-03-05 1125 return -ENOMEM;
c1cc1552616d0f Catalin Marinas 2012-03-05 1126
20a004e7b017cc Will Deacon 2018-02-15 1127 pmd_set_huge(pmdp, __pa(p), __pgprot(PROT_SECT_NORMAL));
c1cc1552616d0f Catalin Marinas 2012-03-05 1128 } else
20a004e7b017cc Will Deacon 2018-02-15 1129 vmemmap_verify((pte_t *)pmdp, node, addr, next);
c1cc1552616d0f Catalin Marinas 2012-03-05 1130 } while (addr = next, addr != end);
c1cc1552616d0f Catalin Marinas 2012-03-05 1131
c1cc1552616d0f Catalin Marinas 2012-03-05 1132 return 0;
c1cc1552616d0f Catalin Marinas 2012-03-05 1133 }
8e01076afd9752 Odin Ugedal 2019-06-07 1134 #endif /* !ARM64_SWAPPER_USES_SECTION_MAPS */
24b6d416434837 Christoph Hellwig 2017-12-29 1135 void vmemmap_free(unsigned long start, unsigned long end,
24b6d416434837 Christoph Hellwig 2017-12-29 1136 struct vmem_altmap *altmap)
0197518cd36720 Tang Chen 2013-02-22 1137 {
bbd6ec605c0fc2 Anshuman Khandual 2020-03-04 1138 #ifdef CONFIG_MEMORY_HOTPLUG
bbd6ec605c0fc2 Anshuman Khandual 2020-03-04 @1139 WARN_ON((start < VMEMMAP_START) || (end > VMEMMAP_END));
bbd6ec605c0fc2 Anshuman Khandual 2020-03-04 1140
eee07935bb52a0 Anshuman Khandual 2020-08-06 1141 unmap_hotplug_range(start, end, true, altmap);
bbd6ec605c0fc2 Anshuman Khandual 2020-03-04 1142 free_empty_tables(start, end, VMEMMAP_START, VMEMMAP_END);
bbd6ec605c0fc2 Anshuman Khandual 2020-03-04 1143 #endif
0197518cd36720 Tang Chen 2013-02-22 1144 }
c1cc1552616d0f Catalin Marinas 2012-03-05 1145 #endif /* CONFIG_SPARSEMEM_VMEMMAP */
af86e5974d3069 Laura Abbott 2014-11-21 1146
:::::: The code at line 1139 was first introduced by commit
:::::: bbd6ec605c0fc286c3f8ce60b4ed44635361d58b arm64/mm: Enable memory hot remove
:::::: TO: Anshuman Khandual <anshuman.khandual(a)arm.com>
:::::: CC: Catalin Marinas <catalin.marinas(a)arm.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
[linux-next:master 11088/14221] drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:875:24: sparse: sparse: incorrect type in assignment (different base types)
by kernel test robot
Hi Will,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: f80535b9aa10b0bbed0fb727247c03e20580db1c
commit: e86d1aa8b60f7ea18d36f50296d7d20eb2852e7e [11088/14221] iommu/arm-smmu: Move Arm SMMU drivers into their own subdirectory
config: arm64-randconfig-s031-20200810 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.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.2-118-ge1578773-dirty
git checkout e86d1aa8b60f7ea18d36f50296d7d20eb2852e7e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:875:26: sparse: sparse: cast to restricted __le64
>> drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:875:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le64 [usertype] @@ got unsigned long long [usertype] @@
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:875:24: sparse: expected restricted __le64 [usertype]
>> drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:875:24: sparse: got unsigned long long [usertype]
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:883:20: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted __le64 [usertype] *[assigned] dst @@ got unsigned long long [usertype] *ent @@
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:883:20: sparse: expected restricted __le64 [usertype] *[assigned] dst
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:883:20: sparse: got unsigned long long [usertype] *ent
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:883:25: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected unsigned long long [usertype] *[assigned] src @@ got restricted __le64 [usertype] * @@
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:883:25: sparse: expected unsigned long long [usertype] *[assigned] src
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:883:25: sparse: got restricted __le64 [usertype] *
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1048:20: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted __le64 [usertype] *[assigned] dst @@ got unsigned long long * @@
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1048:20: sparse: expected restricted __le64 [usertype] *[assigned] dst
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1048:20: sparse: got unsigned long long *
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1048:25: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected unsigned long long [usertype] *[assigned] src @@ got restricted __le64 [usertype] * @@
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1048:25: sparse: expected unsigned long long [usertype] *[assigned] src
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1048:25: sparse: got restricted __le64 [usertype] *
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1948:53: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected restricted __le64 [usertype] *dst @@ got unsigned long long [usertype] *strtab @@
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1948:53: sparse: expected restricted __le64 [usertype] *dst
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1948:53: sparse: got unsigned long long [usertype] *strtab
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1976:39: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] *[assigned] strtab @@ got restricted __le64 [usertype] *l2ptr @@
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1976:39: sparse: expected unsigned long long [usertype] *[assigned] strtab
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1976:39: sparse: got restricted __le64 [usertype] *l2ptr
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c: note: in included file (through arch/arm64/include/asm/atomic.h, include/linux/atomic.h, include/asm-generic/bitops/atomic.h, ...):
arch/arm64/include/asm/cmpxchg.h:172:1: sparse: sparse: cast truncates bits from constant value (ffffffff80000000 becomes 0)
arch/arm64/include/asm/cmpxchg.h:172:1: sparse: sparse: cast truncates bits from constant value (ffffffff80000000 becomes 0)
vim +875 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 869
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 870 static void queue_read(__le64 *dst, u64 *src, size_t n_dwords)
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 871 {
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 872 int i;
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 873
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 874 for (i = 0; i < n_dwords; ++i)
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 @875 *dst++ = le64_to_cpu(*src++);
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 876 }
48ec83bcbcf509 drivers/iommu/arm-smmu-v3.c Will Deacon 2015-05-27 877
:::::: The code at line 875 was first introduced by commit
:::::: 48ec83bcbcf5090fcdf74a6168f161d247492979 iommu/arm-smmu: Add initial driver support for ARM SMMUv3 devices
:::::: TO: Will Deacon <will.deacon(a)arm.com>
:::::: CC: Joerg Roedel <jroedel(a)suse.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
drivers/virtio/virtio_mem.c:1031 virtio_mem_mb_plug_any_sb() error: uninitialized symbol 'rc'.
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 449dc8c97089a6e09fb2dac4d92b1b7ac0eb7c1e
commit: 5f1f79bbc9e26fa9412fa9522f957bb8f030c442 virtio-mem: Paravirtualized memory hotplug
date: 9 weeks ago
config: x86_64-randconfig-m001-20200808 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
New smatch warnings:
drivers/virtio/virtio_mem.c:1031 virtio_mem_mb_plug_any_sb() error: uninitialized symbol 'rc'.
drivers/gpu/drm/amd/amdgpu/../display/dc/calcs/dce_calcs.c:1607 calculate_bandwidth() warn: Function too hairy. No more merges.
Old smatch warnings:
drivers/gpu/drm/amd/amdgpu/../display/dc/calcs/dce_calcs.c:3387 bw_calcs() warn: inconsistent indenting
vim +/rc +1031 drivers/virtio/virtio_mem.c
978
979 /*
980 * Try to plug the desired number of subblocks of a memory block that
981 * is already added to Linux.
982 *
983 * Will modify the state of the memory block.
984 *
985 * Note: Can fail after some subblocks were successfully plugged.
986 */
987 static int virtio_mem_mb_plug_any_sb(struct virtio_mem *vm, unsigned long mb_id,
988 uint64_t *nb_sb, bool online)
989 {
990 unsigned long pfn, nr_pages;
991 int sb_id, count;
992 int rc;
993
994 if (WARN_ON_ONCE(!*nb_sb))
995 return -EINVAL;
996
997 while (*nb_sb) {
998 sb_id = virtio_mem_mb_first_unplugged_sb(vm, mb_id);
999 if (sb_id >= vm->nb_sb_per_mb)
1000 break;
1001 count = 1;
1002 while (count < *nb_sb &&
1003 sb_id + count < vm->nb_sb_per_mb &&
1004 !virtio_mem_mb_test_sb_plugged(vm, mb_id, sb_id + count,
1005 1))
1006 count++;
1007
1008 rc = virtio_mem_mb_plug_sb(vm, mb_id, sb_id, count);
1009 if (rc)
1010 return rc;
1011 *nb_sb -= count;
1012 if (!online)
1013 continue;
1014
1015 /* fake-online the pages if the memory block is online */
1016 pfn = PFN_DOWN(virtio_mem_mb_id_to_phys(mb_id) +
1017 sb_id * vm->subblock_size);
1018 nr_pages = PFN_DOWN(count * vm->subblock_size);
1019 virtio_mem_fake_online(pfn, nr_pages);
1020 }
1021
1022 if (virtio_mem_mb_test_sb_plugged(vm, mb_id, 0, vm->nb_sb_per_mb)) {
1023 if (online)
1024 virtio_mem_mb_set_state(vm, mb_id,
1025 VIRTIO_MEM_MB_STATE_ONLINE);
1026 else
1027 virtio_mem_mb_set_state(vm, mb_id,
1028 VIRTIO_MEM_MB_STATE_OFFLINE);
1029 }
1030
> 1031 return rc;
1032 }
1033
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month
drivers/scsi/3w-sas.c:1245:27: sparse: sparse: incorrect type in argument 1 (different address spaces)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fc80c51fd4b23ec007e88d4c688f2cac1b8648e7
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 8 weeks ago
config: mips-randconfig-s032-20200810 (attached as .config)
compiler: mipsel-linux-gcc (GCC) 9.3.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.2-118-ge1578773-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/scsi/3w-sas.c:238:15: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:325:50: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] request_id__lunl @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:325:50: sparse: expected unsigned short [usertype] request_id__lunl
drivers/scsi/3w-sas.c:325:50: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:328:50: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] request_id__lunl @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:328:50: sparse: expected unsigned short [usertype] request_id__lunl
drivers/scsi/3w-sas.c:328:50: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:343:70: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:343:70: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:344:69: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:344:69: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:346:59: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] sgl_entries__lunh @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:346:59: sparse: expected unsigned short [usertype] sgl_entries__lunh
drivers/scsi/3w-sas.c:346:59: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:351:62: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:351:62: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:352:61: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:352:61: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:354:51: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] sgl_entries__lunh @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:354:51: sparse: expected unsigned short [usertype] sgl_entries__lunh
drivers/scsi/3w-sas.c:354:51: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:423:61: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:423:61: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:424:60: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:424:60: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:426:54: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] parameter_count @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:426:54: sparse: expected unsigned short [usertype] parameter_count
drivers/scsi/3w-sas.c:426:54: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:431:25: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] table_id @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:431:25: sparse: expected unsigned short [usertype] table_id
drivers/scsi/3w-sas.c:431:25: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:432:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] parameter_id @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:432:29: sparse: expected unsigned short [usertype] parameter_id
drivers/scsi/3w-sas.c:432:29: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:433:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] parameter_size_bytes @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:433:37: sparse: expected unsigned short [usertype] parameter_size_bytes
drivers/scsi/3w-sas.c:433:37: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:439:23: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [addressable] [usertype] schedulertime @@ got restricted __le32 [usertype] @@
drivers/scsi/3w-sas.c:439:23: sparse: expected unsigned int [addressable] [usertype] schedulertime
drivers/scsi/3w-sas.c:439:23: sparse: got restricted __le32 [usertype]
drivers/scsi/3w-sas.c:477:15: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:604:23: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:691:46: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] request_id__lunl @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:691:46: sparse: expected unsigned short [usertype] request_id__lunl
drivers/scsi/3w-sas.c:691:46: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:694:58: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:694:58: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:695:57: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:695:57: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:697:47: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] sgl_entries__lunh @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:697:47: sparse: expected unsigned short [usertype] sgl_entries__lunh
drivers/scsi/3w-sas.c:697:47: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:706:40: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:706:40: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:707:39: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:707:39: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:875:17: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:942:50: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] block_count @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:942:50: sparse: expected unsigned short [usertype] block_count
drivers/scsi/3w-sas.c:942:50: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:947:25: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] table_id @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:947:25: sparse: expected unsigned short [usertype] table_id
drivers/scsi/3w-sas.c:947:25: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:948:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] parameter_id @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:948:29: sparse: expected unsigned short [usertype] parameter_id
drivers/scsi/3w-sas.c:948:29: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:949:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] parameter_size_bytes @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:949:37: sparse: expected unsigned short [usertype] parameter_size_bytes
drivers/scsi/3w-sas.c:949:37: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:951:61: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:951:61: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:952:60: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/3w-sas.c:952:60: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/3w-sas.c:993:41: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] message_credits @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:993:41: sparse: expected unsigned short [usertype] message_credits
drivers/scsi/3w-sas.c:993:41: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:999:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] features @@ got restricted __le32 [usertype] @@
drivers/scsi/3w-sas.c:999:34: sparse: expected unsigned int [usertype] features
drivers/scsi/3w-sas.c:999:34: sparse: got restricted __le32 [usertype]
drivers/scsi/3w-sas.c:1003:40: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] fw_srl @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:1003:40: sparse: expected unsigned short [usertype] fw_srl
drivers/scsi/3w-sas.c:1003:40: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:1004:44: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] fw_arch_id @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:1004:44: sparse: expected unsigned short [usertype] fw_arch_id
drivers/scsi/3w-sas.c:1004:44: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:1005:43: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] fw_branch @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:1005:43: sparse: expected unsigned short [usertype] fw_branch
drivers/scsi/3w-sas.c:1005:43: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:1006:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] fw_build @@ got restricted __le16 [usertype] @@
drivers/scsi/3w-sas.c:1006:42: sparse: expected unsigned short [usertype] fw_build
drivers/scsi/3w-sas.c:1006:42: sparse: got restricted __le16 [usertype]
drivers/scsi/3w-sas.c:1018:43: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:1019:47: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:1020:46: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:1021:45: sparse: sparse: cast to restricted __le16
drivers/scsi/3w-sas.c:1022:48: sparse: sparse: cast to restricted __le32
drivers/scsi/3w-sas.c:1169:54: sparse: sparse: cast to restricted __le16
>> drivers/scsi/3w-sas.c:1245:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void *reg @@
>> drivers/scsi/3w-sas.c:1245:27: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/3w-sas.c:1245:27: sparse: got void *reg
drivers/scsi/3w-sas.c:1249:35: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void *reg @@
drivers/scsi/3w-sas.c:1249:35: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/3w-sas.c:1249:35: sparse: got void *reg
drivers/scsi/3w-sas.c:1277:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *reg @@ got unsigned char [noderef] __iomem * @@
drivers/scsi/3w-sas.c:1277:55: sparse: expected void *reg
drivers/scsi/3w-sas.c:1277:55: sparse: got unsigned char [noderef] __iomem *
drivers/scsi/3w-sas.c:1282:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *reg @@ got unsigned char [noderef] __iomem * @@
drivers/scsi/3w-sas.c:1282:55: sparse: expected void *reg
drivers/scsi/3w-sas.c:1282:55: sparse: got unsigned char [noderef] __iomem *
drivers/scsi/3w-sas.c:1652:28: sparse: sparse: cast to restricted __le32
--
drivers/scsi/hptiop.c:150:53: sparse: sparse: restricted __le32 degrades to integer
>> drivers/scsi/hptiop.c:172:35: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
>> drivers/scsi/hptiop.c:172:35: sparse: expected void volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:172:35: sparse: got restricted __le32 *
>> drivers/scsi/hptiop.c:208:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
>> drivers/scsi/hptiop.c:208:34: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:208:34: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:209:35: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:209:35: sparse: expected void volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:209:35: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:244:44: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] result @@ got int @@
drivers/scsi/hptiop.c:244:44: sparse: expected restricted __le32 [usertype] result
drivers/scsi/hptiop.c:244:44: sparse: got int
drivers/scsi/hptiop.c:289:35: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:276:32: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:277:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] cur_rptr @@ got restricted __le32 [usertype] outlist_rptr @@
drivers/scsi/hptiop.c:277:34: sparse: expected unsigned int [usertype] cur_rptr
drivers/scsi/hptiop.c:277:34: sparse: got restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:283:38: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] _tag @@ got restricted __le32 [usertype] val @@
drivers/scsi/hptiop.c:283:38: sparse: expected unsigned int [usertype] _tag
drivers/scsi/hptiop.c:283:38: sparse: got restricted __le32 [usertype] val
drivers/scsi/hptiop.c:288:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] outlist_rptr @@ got unsigned int [assigned] [usertype] cur_rptr @@
drivers/scsi/hptiop.c:288:52: sparse: expected restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:288:52: sparse: got unsigned int [assigned] [usertype] cur_rptr
drivers/scsi/hptiop.c:369:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:369:52: sparse: expected void volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:369:52: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:370:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:370:25: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:370:25: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:453:64: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct hpt_iop_request_get_config *info @@ got struct hpt_iop_request_get_config [noderef] __iomem *config @@
drivers/scsi/hptiop.c:453:64: sparse: expected struct hpt_iop_request_get_config *info
drivers/scsi/hptiop.c:453:64: sparse: got struct hpt_iop_request_get_config [noderef] __iomem *config
drivers/scsi/hptiop.c:455:25: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:558:27: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:558:27: sparse: expected void volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:558:27: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:637:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct hpt_iopmv_regs *regs @@ got void [noderef] __iomem * @@
drivers/scsi/hptiop.c:637:24: sparse: expected struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:637:24: sparse: got void [noderef] __iomem *
drivers/scsi/hptiop.c:643:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got struct hpt_iopmv_regs *regs @@
drivers/scsi/hptiop.c:643:34: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:643:34: sparse: got struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:667:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got struct hpt_iopmv_regs *regs @@
drivers/scsi/hptiop.c:667:26: sparse: expected void const volatile [noderef] __iomem *addr
drivers/scsi/hptiop.c:667:26: sparse: got struct hpt_iopmv_regs *regs
drivers/scsi/hptiop.c:934:27: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:939:34: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:940:30: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:944:43: sparse: sparse: invalid assignment: &=
drivers/scsi/hptiop.c:944:43: sparse: left side has type restricted __le32
drivers/scsi/hptiop.c:944:43: sparse: right side has type int
drivers/scsi/hptiop.c:945:43: sparse: sparse: invalid assignment: ^=
drivers/scsi/hptiop.c:945:43: sparse: left side has type restricted __le32
drivers/scsi/hptiop.c:945:43: sparse: right side has type int
drivers/scsi/hptiop.c:950:57: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hptiop.c:950:48: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] intrfc_len @@ got unsigned int @@
drivers/scsi/hptiop.c:950:48: sparse: expected restricted __le32 [usertype] intrfc_len
drivers/scsi/hptiop.c:950:48: sparse: got unsigned int
drivers/scsi/hptiop.c:951:29: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] inlist_wptr @@
drivers/scsi/hptiop.c:951:29: sparse: expected unsigned int [usertype] val
drivers/scsi/hptiop.c:951:29: sparse: got restricted __le32 [usertype] inlist_wptr
drivers/scsi/hptiop.c:976:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/scsi/hptiop.c:976:16: sparse: expected unsigned int [usertype] val
drivers/scsi/hptiop.c:976:16: sparse: got restricted __le32 [usertype]
drivers/scsi/hptiop.c:978:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/scsi/hptiop.c:978:16: sparse: expected unsigned int [usertype] val
drivers/scsi/hptiop.c:978:16: sparse: got restricted __le32 [usertype]
drivers/scsi/hptiop.c:981:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/scsi/hptiop.c:981:16: sparse: expected unsigned int [usertype] val
drivers/scsi/hptiop.c:981:16: sparse: got restricted __le32 [usertype]
drivers/scsi/hptiop.c:983:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/scsi/hptiop.c:983:16: sparse: expected unsigned int [usertype] val
drivers/scsi/hptiop.c:983:16: sparse: got restricted __le32 [usertype]
drivers/scsi/hptiop.c:986:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/scsi/hptiop.c:986:16: sparse: expected unsigned int [usertype] val
drivers/scsi/hptiop.c:986:16: sparse: got restricted __le32 [usertype]
drivers/scsi/hptiop.c:988:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] @@
drivers/scsi/hptiop.c:988:16: sparse: expected unsigned int [usertype] val
drivers/scsi/hptiop.c:988:16: sparse: got restricted __le32 [usertype]
drivers/scsi/hptiop.c:991:35: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] inlist_wptr @@ got unsigned int @@
drivers/scsi/hptiop.c:991:35: sparse: expected restricted __le32 [usertype] inlist_wptr
drivers/scsi/hptiop.c:991:35: sparse: got unsigned int
drivers/scsi/hptiop.c:992:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] @@ got unsigned int @@
drivers/scsi/hptiop.c:992:37: sparse: expected restricted __le32 [usertype]
drivers/scsi/hptiop.c:992:37: sparse: got unsigned int
drivers/scsi/hptiop.c:993:36: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] outlist_rptr @@ got unsigned int @@
drivers/scsi/hptiop.c:993:36: sparse: expected restricted __le32 [usertype] outlist_rptr
drivers/scsi/hptiop.c:993:36: sparse: got unsigned int
drivers/scsi/hptiop.c:1536:29: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:1536:29: sparse: expected void volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:1536:29: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:1537:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got restricted __le32 * @@
drivers/scsi/hptiop.c:1537:25: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/hptiop.c:1537:25: sparse: got restricted __le32 *
drivers/scsi/hptiop.c:150:51: sparse: sparse: dereference of noderef expression
drivers/scsi/hptiop.c:150:51: sparse: sparse: dereference of noderef expression
--
drivers/scsi/aacraid/src.c:146:34: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/aacraid/src.c:146:34: sparse: sparse: cast to restricted __le32
drivers/scsi/aacraid/src.c:494:54: sparse: sparse: restricted __le16 degrades to integer
drivers/scsi/aacraid/src.c:515:57: sparse: sparse: bad assignment (+=) to restricted __le32
drivers/scsi/aacraid/src.c:522:57: sparse: sparse: bad assignment (+=) to restricted __le32
drivers/scsi/aacraid/src.c:530:49: sparse: sparse: bad assignment (+=) to restricted __le32
drivers/scsi/aacraid/src.c:533:55: sparse: sparse: bad assignment (+=) to restricted __le32
drivers/scsi/aacraid/src.c:772:23: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/scsi/aacraid/src.c:772:42: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got char * @@
>> drivers/scsi/aacraid/src.c:772:42: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/aacraid/src.c:772:42: sparse: got char *
drivers/scsi/aacraid/src.c:774:23: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/scsi/aacraid/src.c:774:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got char * @@
>> drivers/scsi/aacraid/src.c:774:42: sparse: expected void volatile [noderef] __iomem *mem
drivers/scsi/aacraid/src.c:774:42: sparse: got char *
--
>> drivers/scsi/arcmsr/arcmsr_hba.c:3130:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] *firm_model @@
>> drivers/scsi/arcmsr/arcmsr_hba.c:3130:41: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3130:41: sparse: got unsigned int [usertype] *firm_model
>> drivers/scsi/arcmsr/arcmsr_hba.c:3137:43: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] *firm_version @@
drivers/scsi/arcmsr/arcmsr_hba.c:3137:43: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3137:43: sparse: got unsigned int [usertype] *firm_version
>> drivers/scsi/arcmsr/arcmsr_hba.c:3144:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] *device_map @@
drivers/scsi/arcmsr/arcmsr_hba.c:3144:41: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3144:41: sparse: got unsigned int [usertype] *device_map
>> drivers/scsi/arcmsr/arcmsr_hba.c:3149:42: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3149:42: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3149:42: sparse: got unsigned int [usertype] *
drivers/scsi/arcmsr/arcmsr_hba.c:3150:49: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3150:49: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3150:49: sparse: got unsigned int [usertype] *
drivers/scsi/arcmsr/arcmsr_hba.c:3151:51: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3151:51: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3151:51: sparse: got unsigned int [usertype] *
drivers/scsi/arcmsr/arcmsr_hba.c:3152:48: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3152:48: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3152:48: sparse: got unsigned int [usertype] *
drivers/scsi/arcmsr/arcmsr_hba.c:3153:49: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3153:49: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3153:49: sparse: got unsigned int [usertype] *
drivers/scsi/arcmsr/arcmsr_hba.c:3154:49: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got unsigned int [usertype] * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3154:49: sparse: expected void const volatile [noderef] __iomem *mem
drivers/scsi/arcmsr/arcmsr_hba.c:3154:49: sparse: got unsigned int [usertype] *
drivers/scsi/arcmsr/arcmsr_hba.c:3172:40: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned int [usertype] *rwbuffer @@ got unsigned int [noderef] __iomem * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3172:40: sparse: expected unsigned int [usertype] *rwbuffer
drivers/scsi/arcmsr/arcmsr_hba.c:3172:40: sparse: got unsigned int [noderef] __iomem *
drivers/scsi/arcmsr/arcmsr_hba.c:3191:43: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned int [usertype] *rwbuffer @@ got unsigned int [noderef] [usertype] __iomem *message_rwbuffer @@
drivers/scsi/arcmsr/arcmsr_hba.c:3191:43: sparse: expected unsigned int [usertype] *rwbuffer
drivers/scsi/arcmsr/arcmsr_hba.c:3191:43: sparse: got unsigned int [noderef] [usertype] __iomem *message_rwbuffer
drivers/scsi/arcmsr/arcmsr_hba.c:3214:41: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned int [usertype] *rwbuffer @@ got unsigned int [noderef] __iomem * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3214:41: sparse: expected unsigned int [usertype] *rwbuffer
drivers/scsi/arcmsr/arcmsr_hba.c:3214:41: sparse: got unsigned int [noderef] __iomem *
drivers/scsi/arcmsr/arcmsr_hba.c:3236:43: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned int [usertype] *rwbuffer @@ got unsigned int [noderef] [usertype] __iomem *msgcode_rwbuffer @@
drivers/scsi/arcmsr/arcmsr_hba.c:3236:43: sparse: expected unsigned int [usertype] *rwbuffer
drivers/scsi/arcmsr/arcmsr_hba.c:3236:43: sparse: got unsigned int [noderef] [usertype] __iomem *msgcode_rwbuffer
drivers/scsi/arcmsr/arcmsr_hba.c:3262:41: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected unsigned int [usertype] *rwbuffer @@ got unsigned int [noderef] __iomem * @@
drivers/scsi/arcmsr/arcmsr_hba.c:3262:41: sparse: expected unsigned int [usertype] *rwbuffer
drivers/scsi/arcmsr/arcmsr_hba.c:3262:41: sparse: got unsigned int [noderef] __iomem *
vim +1245 drivers/scsi/3w-sas.c
f619106bdd9d19 Adam Radford 2009-10-23 1237
f619106bdd9d19 Adam Radford 2009-10-23 1238 /* This function will poll for a register change */
f619106bdd9d19 Adam Radford 2009-10-23 1239 static int twl_poll_register(TW_Device_Extension *tw_dev, void *reg, u32 value, u32 result, int seconds)
f619106bdd9d19 Adam Radford 2009-10-23 1240 {
f619106bdd9d19 Adam Radford 2009-10-23 1241 unsigned long before;
f619106bdd9d19 Adam Radford 2009-10-23 1242 int retval = 1;
f619106bdd9d19 Adam Radford 2009-10-23 1243 u32 reg_value;
f619106bdd9d19 Adam Radford 2009-10-23 1244
f619106bdd9d19 Adam Radford 2009-10-23 @1245 reg_value = readl(reg);
f619106bdd9d19 Adam Radford 2009-10-23 1246 before = jiffies;
f619106bdd9d19 Adam Radford 2009-10-23 1247
f619106bdd9d19 Adam Radford 2009-10-23 1248 while ((reg_value & value) != result) {
f619106bdd9d19 Adam Radford 2009-10-23 1249 reg_value = readl(reg);
f619106bdd9d19 Adam Radford 2009-10-23 1250 if (time_after(jiffies, before + HZ * seconds))
f619106bdd9d19 Adam Radford 2009-10-23 1251 goto out;
f619106bdd9d19 Adam Radford 2009-10-23 1252 msleep(50);
f619106bdd9d19 Adam Radford 2009-10-23 1253 }
f619106bdd9d19 Adam Radford 2009-10-23 1254 retval = 0;
f619106bdd9d19 Adam Radford 2009-10-23 1255 out:
f619106bdd9d19 Adam Radford 2009-10-23 1256 return retval;
f619106bdd9d19 Adam Radford 2009-10-23 1257 } /* End twl_poll_register() */
f619106bdd9d19 Adam Radford 2009-10-23 1258
:::::: The code at line 1245 was first introduced by commit
:::::: f619106bdd9d197c947f07108af57946f19a7f7e [SCSI] 3w-sas: Add new driver for LSI 3ware 9750
:::::: TO: adam radford <aradford(a)gmail.com>
:::::: CC: James Bottomley <James.Bottomley(a)suse.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 1 month