lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Mon, 22 Jun 2020 06:08:14 +0800
From:   kernel test robot <lkp@...el.com>
To:     Luc Van Oostenryck <luc.vanoostenryck@...il.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: drivers/scsi/myrs.c:2275:34: sparse: sparse: incorrect type in
 argument 1 (different address spaces)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   16f4aa9b7c2304e439796bd097b2c0a7663f5d6e
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date:   3 days ago
config: i386-randconfig-s002-20200622 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.2-rc2-13-gc59158c8-dirty
        git checkout 670d0a4b10704667765f7d18f7592993d02783aa
        # save the attached .config to linux build tree
        make W=1 C=1 ARCH=i386 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

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


sparse warnings: (new ones prefixed by >>)

   drivers/scsi/myrs.c:1532:5: sparse: sparse: symbol 'myrs_host_reset' was not declared. Should it be static?
   drivers/scsi/myrs.c:1922:27: sparse: sparse: symbol 'myrs_template' was not declared. Should it be static?
   drivers/scsi/myrs.c:2036:31: sparse: sparse: symbol 'myrs_raid_functions' was not declared. Should it be static?
   drivers/scsi/myrs.c:2046:6: sparse: sparse: symbol 'myrs_flush_cache' was not declared. Should it be static?
>> drivers/scsi/myrs.c:2275:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __iomem *base @@     got struct myrs_hba *cs @@
>> drivers/scsi/myrs.c:2275:34: sparse:     expected void [noderef] __iomem *base
   drivers/scsi/myrs.c:2275:34: sparse:     got struct myrs_hba *cs
   drivers/scsi/myrs.c:2434:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2434:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2434:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2502:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2502:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2502:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2427:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2427:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2427:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2502:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2502:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2502:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2413:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2413:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2413:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2449:13: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __le32 [usertype] val @@     got unsigned int @@
   drivers/scsi/myrs.c:2449:13: sparse:     expected restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2449:13: sparse:     got unsigned int
   drivers/scsi/myrs.c:2549:13: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __le32 [usertype] val @@     got unsigned int @@
   drivers/scsi/myrs.c:2549:13: sparse:     expected restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2549:13: sparse:     got unsigned int
   drivers/scsi/myrs.c:2552:18: sparse: sparse: restricted __le32 degrades to integer
   drivers/scsi/myrs.c:2427:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2427:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2427:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2495:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2495:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2495:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2472:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2472:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2472:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2441:13: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __le32 [usertype] val @@     got unsigned int @@
   drivers/scsi/myrs.c:2441:13: sparse:     expected restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2441:13: sparse:     got unsigned int
   drivers/scsi/myrs.c:2406:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2406:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2406:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2479:13: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __le32 [usertype] val @@     got unsigned int @@
   drivers/scsi/myrs.c:2479:13: sparse:     expected restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2479:13: sparse:     got unsigned int
   drivers/scsi/myrs.c:2457:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2457:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2457:16: sparse:     got restricted __le32 [usertype] val
   drivers/scsi/myrs.c:2413:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] val @@
   drivers/scsi/myrs.c:2413:16: sparse:     expected unsigned int val
   drivers/scsi/myrs.c:2413:16: sparse:     got restricted __le32 [usertype] val
--
>> drivers/scsi/fnic/vnic_dev.c:332:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __iomem * @@     got unsigned int * @@
>> drivers/scsi/fnic/vnic_dev.c:332:32: sparse:     expected void [noderef] __iomem *
   drivers/scsi/fnic/vnic_dev.c:332:32: sparse:     got unsigned int *
   drivers/scsi/fnic/vnic_dev.c:333:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __iomem * @@     got unsigned int * @@
   drivers/scsi/fnic/vnic_dev.c:333:37: sparse:     expected void [noderef] __iomem *
   drivers/scsi/fnic/vnic_dev.c:333:37: sparse:     got unsigned int *
   drivers/scsi/fnic/vnic_dev.c:373:36: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void [noderef] __iomem * @@     got unsigned int * @@
   drivers/scsi/fnic/vnic_dev.c:373:36: sparse:     expected void [noderef] __iomem *
   drivers/scsi/fnic/vnic_dev.c:373:36: sparse:     got unsigned int *
>> drivers/scsi/fnic/vnic_dev.c:469:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct vnic_wq_ctrl *wq_ctrl @@     got struct vnic_wq_ctrl [noderef] __iomem *ctrl @@
   drivers/scsi/fnic/vnic_dev.c:469:32: sparse:     expected struct vnic_wq_ctrl *wq_ctrl
>> drivers/scsi/fnic/vnic_dev.c:469:32: sparse:     got struct vnic_wq_ctrl [noderef] __iomem *ctrl
>> drivers/scsi/fnic/vnic_dev.c:943:11: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void *p @@     got void [noderef] __iomem * @@
   drivers/scsi/fnic/vnic_dev.c:943:11: sparse:     expected void *p
>> drivers/scsi/fnic/vnic_dev.c:943:11: sparse:     got void [noderef] __iomem *
--
   drivers/target/tcm_fc/tfc_sess.c:47:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
>> drivers/target/tcm_fc/tfc_sess.c:47:17: sparse:    void [noderef] __rcu *
   drivers/target/tcm_fc/tfc_sess.c:47:17: sparse:    void *
   drivers/target/tcm_fc/tfc_sess.c:72:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/target/tcm_fc/tfc_sess.c:72:9: sparse:    void [noderef] __rcu *
   drivers/target/tcm_fc/tfc_sess.c:72:9: sparse:    void *
   drivers/target/tcm_fc/tfc_sess.c:89:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/target/tcm_fc/tfc_sess.c:89:9: sparse:    void [noderef] __rcu *
   drivers/target/tcm_fc/tfc_sess.c:89:9: sparse:    void *
   drivers/target/tcm_fc/tfc_sess.c:166:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/target/tcm_fc/tfc_sess.c:166:17: sparse:    void [noderef] __rcu *
   drivers/target/tcm_fc/tfc_sess.c:166:17: sparse:    void *
   drivers/target/tcm_fc/tfc_sess.c:456:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/target/tcm_fc/tfc_sess.c:456:17: sparse:    void [noderef] __rcu *
   drivers/target/tcm_fc/tfc_sess.c:456:17: sparse:    void *
--
>> drivers/scsi/mpt3sas/mpt3sas_base.c:1635:64: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got unsigned int [usertype] * @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:1635:64: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/scsi/mpt3sas/mpt3sas_base.c:1635:64: sparse:     got unsigned int [usertype] *
   drivers/scsi/mpt3sas/mpt3sas_base.c:1689:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got unsigned int [usertype] * @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:1689:52: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/scsi/mpt3sas/mpt3sas_base.c:1689:52: sparse:     got unsigned int [usertype] *
   drivers/scsi/mpt3sas/mpt3sas_base.c:4021:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:4021:16: sparse:     expected unsigned int val
   drivers/scsi/mpt3sas/mpt3sas_base.c:4021:16: sparse:     got restricted __le32 [usertype]
   drivers/scsi/mpt3sas/mpt3sas_base.c:4043:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:4043:16: sparse:     expected unsigned int val
   drivers/scsi/mpt3sas/mpt3sas_base.c:4043:16: sparse:     got restricted __le32 [usertype]
   drivers/scsi/mpt3sas/mpt3sas_base.c:4066:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:4066:16: sparse:     expected unsigned int val
   drivers/scsi/mpt3sas/mpt3sas_base.c:4066:16: sparse:     got restricted __le32 [usertype]
   drivers/scsi/mpt3sas/mpt3sas_base.c:4087:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:4087:16: sparse:     expected unsigned int val
   drivers/scsi/mpt3sas/mpt3sas_base.c:4087:16: sparse:     got restricted __le32 [usertype]
   drivers/scsi/mpt3sas/mpt3sas_base.c:5917:24: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int val @@     got restricted __le32 [usertype] @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:5917:24: sparse:     expected unsigned int val
   drivers/scsi/mpt3sas/mpt3sas_base.c:5917:24: sparse:     got restricted __le32 [usertype]
   drivers/scsi/mpt3sas/mpt3sas_base.c:5936:20: sparse: sparse: cast to restricted __le16
   drivers/scsi/mpt3sas/mpt3sas_base.c:5944:20: sparse: sparse: cast to restricted __le16
   drivers/scsi/mpt3sas/mpt3sas_base.c:5957:36: sparse: sparse: cast to restricted __le16
   drivers/scsi/mpt3sas/mpt3sas_base.c:7090:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got unsigned int [usertype] * @@
   drivers/scsi/mpt3sas/mpt3sas_base.c:7090:55: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/scsi/mpt3sas/mpt3sas_base.c:7090:55: sparse:     got unsigned int [usertype] *

vim +2275 drivers/scsi/myrs.c

77266186397c6c Hannes Reinecke 2018-10-17  2266  
77266186397c6c Hannes Reinecke 2018-10-17  2267  static void myrs_cleanup(struct myrs_hba *cs)
77266186397c6c Hannes Reinecke 2018-10-17  2268  {
77266186397c6c Hannes Reinecke 2018-10-17  2269  	struct pci_dev *pdev = cs->pdev;
77266186397c6c Hannes Reinecke 2018-10-17  2270  
77266186397c6c Hannes Reinecke 2018-10-17  2271  	/* Free the memory mailbox, status, and related structures */
77266186397c6c Hannes Reinecke 2018-10-17  2272  	myrs_unmap(cs);
77266186397c6c Hannes Reinecke 2018-10-17  2273  
77266186397c6c Hannes Reinecke 2018-10-17  2274  	if (cs->mmio_base) {
77266186397c6c Hannes Reinecke 2018-10-17 @2275  		cs->disable_intr(cs);
77266186397c6c Hannes Reinecke 2018-10-17  2276  		iounmap(cs->mmio_base);
77266186397c6c Hannes Reinecke 2018-10-17  2277  	}
77266186397c6c Hannes Reinecke 2018-10-17  2278  	if (cs->irq)
77266186397c6c Hannes Reinecke 2018-10-17  2279  		free_irq(cs->irq, cs);
77266186397c6c Hannes Reinecke 2018-10-17  2280  	if (cs->io_addr)
77266186397c6c Hannes Reinecke 2018-10-17  2281  		release_region(cs->io_addr, 0x80);
77266186397c6c Hannes Reinecke 2018-10-17  2282  	iounmap(cs->mmio_base);
77266186397c6c Hannes Reinecke 2018-10-17  2283  	pci_set_drvdata(pdev, NULL);
77266186397c6c Hannes Reinecke 2018-10-17  2284  	pci_disable_device(pdev);
77266186397c6c Hannes Reinecke 2018-10-17  2285  	scsi_host_put(cs->host);
77266186397c6c Hannes Reinecke 2018-10-17  2286  }
77266186397c6c Hannes Reinecke 2018-10-17  2287  

:::::: The code at line 2275 was first introduced by commit
:::::: 77266186397c6c782a3f670d32808a9671806ec5 scsi: myrs: Add Mylex RAID controller (SCSI interface)

:::::: TO: Hannes Reinecke <hare@...e.com>
:::::: CC: Martin K. Petersen <martin.petersen@...cle.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (35046 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ