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:   Sun, 21 Jun 2020 18:28:47 +0800
From:   kernel test robot <lkp@...el.com>
To:     Jose Abreu <Jose.Abreu@...opsys.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c:975:27:
 sparse: sparse: incorrect type in assignment (different base types)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   64677779e8962c20b580b471790fe42367750599
commit: ccfc639a94f25eb8639e8ffbecad2f6b60d22eb1 net: stmmac: selftests: Add a selftest for Flexible RX Parser
date:   11 months ago
config: riscv-randconfig-s031-20200621 (attached as .config)
compiler: riscv32-linux-gcc (GCC) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.2-rc2-13-gc59158c8-dirty
        git checkout ccfc639a94f25eb8639e8ffbecad2f6b60d22eb1
        # save the attached .config to linux build tree
        make W=1 C=1 ARCH=riscv 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/net/ethernet/stmicro/stmmac/stmmac_selftests.c:975:27: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] mask @@     got int @@
   drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c:975:27: sparse:     expected restricted __be32 [usertype] mask
   drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c:975:27: sparse:     got int

vim +975 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c

   916	
   917	#ifdef CONFIG_NET_CLS_ACT
   918	static int stmmac_test_rxp(struct stmmac_priv *priv)
   919	{
   920		unsigned char addr[ETH_ALEN] = {0xde, 0xad, 0xbe, 0xef, 0x00, 0x00};
   921		struct tc_cls_u32_offload cls_u32 = { };
   922		struct stmmac_packet_attrs attr = { };
   923		struct tc_action **actions, *act;
   924		struct tc_u32_sel *sel;
   925		struct tcf_exts *exts;
   926		int ret, i, nk = 1;
   927	
   928		if (!tc_can_offload(priv->dev))
   929			return -EOPNOTSUPP;
   930		if (!priv->dma_cap.frpsel)
   931			return -EOPNOTSUPP;
   932	
   933		sel = kzalloc(sizeof(*sel) + nk * sizeof(struct tc_u32_key), GFP_KERNEL);
   934		if (!sel)
   935			return -ENOMEM;
   936	
   937		exts = kzalloc(sizeof(*exts), GFP_KERNEL);
   938		if (!exts) {
   939			ret = -ENOMEM;
   940			goto cleanup_sel;
   941		}
   942	
   943		actions = kzalloc(nk * sizeof(*actions), GFP_KERNEL);
   944		if (!actions) {
   945			ret = -ENOMEM;
   946			goto cleanup_exts;
   947		}
   948	
   949		act = kzalloc(nk * sizeof(*act), GFP_KERNEL);
   950		if (!act) {
   951			ret = -ENOMEM;
   952			goto cleanup_actions;
   953		}
   954	
   955		cls_u32.command = TC_CLSU32_NEW_KNODE;
   956		cls_u32.common.chain_index = 0;
   957		cls_u32.common.protocol = htons(ETH_P_ALL);
   958		cls_u32.knode.exts = exts;
   959		cls_u32.knode.sel = sel;
   960		cls_u32.knode.handle = 0x123;
   961	
   962		exts->nr_actions = nk;
   963		exts->actions = actions;
   964		for (i = 0; i < nk; i++) {
   965			struct tcf_gact *gact = to_gact(&act[i]);
   966	
   967			actions[i] = &act[i];
   968			gact->tcf_action = TC_ACT_SHOT;
   969		}
   970	
   971		sel->nkeys = nk;
   972		sel->offshift = 0;
   973		sel->keys[0].off = 6;
   974		sel->keys[0].val = htonl(0xdeadbeef);
 > 975		sel->keys[0].mask = ~0x0;
   976	
   977		ret = stmmac_tc_setup_cls_u32(priv, priv, &cls_u32);
   978		if (ret)
   979			goto cleanup_act;
   980	
   981		attr.dst = priv->dev->dev_addr;
   982		attr.src = addr;
   983	
   984		ret = __stmmac_test_loopback(priv, &attr);
   985		ret = !ret; /* Shall NOT receive packet */
   986	
   987		cls_u32.command = TC_CLSU32_DELETE_KNODE;
   988		stmmac_tc_setup_cls_u32(priv, priv, &cls_u32);
   989	
   990	cleanup_act:
   991		kfree(act);
   992	cleanup_actions:
   993		kfree(actions);
   994	cleanup_exts:
   995		kfree(exts);
   996	cleanup_sel:
   997		kfree(sel);
   998		return ret;
   999	}
  1000	#else
  1001	static int stmmac_test_rxp(struct stmmac_priv *priv)
  1002	{
  1003		return -EOPNOTSUPP;
  1004	}
  1005	#endif
  1006	

---
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" (24757 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ