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:   Tue, 11 Aug 2020 17:34:52 +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/dma/fsl_raid.c:115:17: sparse: sparse: incorrect type in
 argument 1 (different base types)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   00e4db51259a5f936fec1424b884f029479d3981
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date:   8 weeks ago
config: powerpc-randconfig-s031-20200811 (attached as .config)
compiler: powerpc64-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-168-g9554805c-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=powerpc 

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/dma/fsl_raid.c:115:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
>> drivers/dma/fsl_raid.c:115:17: sparse:     expected unsigned int const volatile [noderef] [usertype] __iomem *addr
   drivers/dma/fsl_raid.c:115:17: sparse:     got restricted __be32 *
>> drivers/dma/fsl_raid.c:129:34: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
>> drivers/dma/fsl_raid.c:129:34: sparse:     expected unsigned int volatile [noderef] [usertype] __iomem *addr
   drivers/dma/fsl_raid.c:129:34: sparse:     got restricted __be32 *
   drivers/dma/fsl_raid.c:171:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:171:17: sparse:     expected unsigned int const volatile [noderef] [usertype] __iomem *addr
   drivers/dma/fsl_raid.c:171:17: sparse:     got restricted __be32 *
   drivers/dma/fsl_raid.c:196:34: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:196:34: sparse:     expected unsigned int volatile [noderef] [usertype] __iomem *addr
   drivers/dma/fsl_raid.c:196:34: sparse:     got restricted __be32 *
   drivers/dma/fsl_raid.c:210:36: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:210:36: sparse:     expected unsigned int const volatile [noderef] [usertype] __iomem *addr
   drivers/dma/fsl_raid.c:210:36: sparse:     got restricted __be32 *
   drivers/dma/fsl_raid.c:220:42: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:220:42: sparse:     expected unsigned int const volatile [noderef] [usertype] __iomem *addr
   drivers/dma/fsl_raid.c:220:42: sparse:     got restricted __be32 *
   drivers/dma/fsl_raid.c:226:26: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:226:26: sparse:     expected unsigned int volatile [noderef] [usertype] __iomem *addr
   drivers/dma/fsl_raid.c:226:26: sparse:     got restricted __be32 *
   drivers/dma/fsl_raid.c:246:26: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] efrl32 @@     got unsigned int [assigned] [usertype] efrl @@
   drivers/dma/fsl_raid.c:246:26: sparse:     expected restricted __be32 [usertype] efrl32
   drivers/dma/fsl_raid.c:246:26: sparse:     got unsigned int [assigned] [usertype] efrl
   drivers/dma/fsl_raid.c:247:29: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] addr_high @@     got unsigned int [usertype] @@
   drivers/dma/fsl_raid.c:247:29: sparse:     expected restricted __be32 [usertype] addr_high
   drivers/dma/fsl_raid.c:247:29: sparse:     got unsigned int [usertype]
   drivers/dma/fsl_raid.c:248:28: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] addr_low @@     got unsigned int [usertype] @@
   drivers/dma/fsl_raid.c:248:28: sparse:     expected restricted __be32 [usertype] addr_low
   drivers/dma/fsl_raid.c:248:28: sparse:     got unsigned int [usertype]
   drivers/dma/fsl_raid.c:260:28: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] fmt32 @@     got int @@
   drivers/dma/fsl_raid.c:260:28: sparse:     expected restricted __be32 [usertype] fmt32
   drivers/dma/fsl_raid.c:260:28: sparse:     got int
   drivers/dma/fsl_raid.c:261:29: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] lbea32 @@     got unsigned int [usertype] @@
   drivers/dma/fsl_raid.c:261:29: sparse:     expected restricted __be32 [usertype] lbea32
   drivers/dma/fsl_raid.c:261:29: sparse:     got unsigned int [usertype]
   drivers/dma/fsl_raid.c:262:31: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] addr_low @@     got unsigned int [usertype] @@
   drivers/dma/fsl_raid.c:262:31: sparse:     expected restricted __be32 [usertype] addr_low
   drivers/dma/fsl_raid.c:262:31: sparse:     got unsigned int [usertype]
   drivers/dma/fsl_raid.c:338:18: sparse: sparse: incompatible types for operation (<=):
   drivers/dma/fsl_raid.c:338:18: sparse:    struct fsl_re_desc *[assigned] desc
   drivers/dma/fsl_raid.c:338:18: sparse:    int
   drivers/dma/fsl_raid.c:462:18: sparse: sparse: incompatible types for operation (<=):
   drivers/dma/fsl_raid.c:462:18: sparse:    struct fsl_re_desc *[assigned] desc
   drivers/dma/fsl_raid.c:462:18: sparse:    int
   drivers/dma/fsl_raid.c:546:18: sparse: sparse: incompatible types for operation (<=):
   drivers/dma/fsl_raid.c:546:18: sparse:    struct fsl_re_desc *[assigned] desc
   drivers/dma/fsl_raid.c:546:18: sparse:    int
   drivers/dma/fsl_raid.c:712:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:714:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:716:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:718:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:720:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:722:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:726:31: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:729:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:735:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
>> drivers/dma/fsl_raid.c:768:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct fsl_re_ctrl *re_regs @@     got void [noderef] __iomem * @@
   drivers/dma/fsl_raid.c:773:26: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:776:26: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:778:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:778:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@
   drivers/dma/fsl_raid.c:778:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@     got restricted __be32 * @@

vim +115 drivers/dma/fsl_raid.c

ad80da658bbcaa Xuelin Shi 2015-03-03  103  
ad80da658bbcaa Xuelin Shi 2015-03-03  104  /* Copy descriptor from per chan software queue into hardware job ring */
ad80da658bbcaa Xuelin Shi 2015-03-03  105  static void fsl_re_issue_pending(struct dma_chan *chan)
ad80da658bbcaa Xuelin Shi 2015-03-03  106  {
ad80da658bbcaa Xuelin Shi 2015-03-03  107  	struct fsl_re_chan *re_chan;
ad80da658bbcaa Xuelin Shi 2015-03-03  108  	int avail;
ad80da658bbcaa Xuelin Shi 2015-03-03  109  	struct fsl_re_desc *desc, *_desc;
ad80da658bbcaa Xuelin Shi 2015-03-03  110  	unsigned long flags;
ad80da658bbcaa Xuelin Shi 2015-03-03  111  
ad80da658bbcaa Xuelin Shi 2015-03-03  112  	re_chan = container_of(chan, struct fsl_re_chan, chan);
ad80da658bbcaa Xuelin Shi 2015-03-03  113  
ad80da658bbcaa Xuelin Shi 2015-03-03  114  	spin_lock_irqsave(&re_chan->desc_lock, flags);
ad80da658bbcaa Xuelin Shi 2015-03-03 @115  	avail = FSL_RE_SLOT_AVAIL(
ad80da658bbcaa Xuelin Shi 2015-03-03  116  		in_be32(&re_chan->jrregs->inbring_slot_avail));
ad80da658bbcaa Xuelin Shi 2015-03-03  117  
ad80da658bbcaa Xuelin Shi 2015-03-03  118  	list_for_each_entry_safe(desc, _desc, &re_chan->submit_q, node) {
ad80da658bbcaa Xuelin Shi 2015-03-03  119  		if (!avail)
ad80da658bbcaa Xuelin Shi 2015-03-03  120  			break;
ad80da658bbcaa Xuelin Shi 2015-03-03  121  
ad80da658bbcaa Xuelin Shi 2015-03-03  122  		list_move_tail(&desc->node, &re_chan->active_q);
ad80da658bbcaa Xuelin Shi 2015-03-03  123  
ad80da658bbcaa Xuelin Shi 2015-03-03  124  		memcpy(&re_chan->inb_ring_virt_addr[re_chan->inb_count],
ad80da658bbcaa Xuelin Shi 2015-03-03  125  		       &desc->hwdesc, sizeof(struct fsl_re_hw_desc));
ad80da658bbcaa Xuelin Shi 2015-03-03  126  
ad80da658bbcaa Xuelin Shi 2015-03-03  127  		re_chan->inb_count = (re_chan->inb_count + 1) &
ad80da658bbcaa Xuelin Shi 2015-03-03  128  						FSL_RE_RING_SIZE_MASK;
ad80da658bbcaa Xuelin Shi 2015-03-03 @129  		out_be32(&re_chan->jrregs->inbring_add_job, FSL_RE_ADD_JOB(1));
ad80da658bbcaa Xuelin Shi 2015-03-03  130  		avail--;
ad80da658bbcaa Xuelin Shi 2015-03-03  131  	}
ad80da658bbcaa Xuelin Shi 2015-03-03  132  	spin_unlock_irqrestore(&re_chan->desc_lock, flags);
ad80da658bbcaa Xuelin Shi 2015-03-03  133  }
ad80da658bbcaa Xuelin Shi 2015-03-03  134  

:::::: The code at line 115 was first introduced by commit
:::::: ad80da658bbcaaac1d3617ea6cb0f4d5e16da422 dmaengine: Driver support for FSL RaidEngine device.

:::::: TO: Xuelin Shi <xuelin.shi@...escale.com>
:::::: CC: Vinod Koul <vinod.koul@...el.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" (28289 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ