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]
Message-ID: <202008102339.HEqg3vEU%lkp@intel.com>
Date:   Mon, 10 Aug 2020 23:04:42 +0800
From:   kernel test robot <lkp@...el.com>
To:     Vladimir Oltean <olteanv@...il.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
        Florian Fainelli <f.fainelli@...il.com>
Subject: drivers/net/dsa/sja1105/sja1105_main.c:3418
 sja1105_check_device_id() warn: this array is probably non-NULL.
 'match->compatible'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   fc80c51fd4b23ec007e88d4c688f2cac1b8648e7
commit: 0b0e299720bb99428892a23ecbd2b4b7f61ccf6d net: dsa: sja1105: use detected device id instead of DT one on mismatch
date:   5 days ago
config: i386-randconfig-m021-20200810 (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@...el.com>

New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:3418 sja1105_check_device_id() warn: this array is probably non-NULL. 'match->compatible'
drivers/net/dsa/sja1105/sja1105_main.c:3418 sja1105_check_device_id() warn: this array is probably non-NULL. 'match->compatible'

Old smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:46 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:47 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:48 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:188 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:191 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:197 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:202 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:562 sja1105_init_avb_params() warn: is 'table->entries' large enough for 'struct sja1105_avb_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:1154 sja1105_find_static_fdb_entry() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1272 sja1105et_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1274 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1282 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1368 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1376 sja1105pqrs_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1381 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1431 sja1105pqrs_fdb_del() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1515 sja1105_fdb_dump() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1837 sja1105_static_config_reload() warn: bitwise AND condition is false here
drivers/net/dsa/sja1105/sja1105_main.c:2195 sja1105_build_bridge_vlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2196 sja1105_build_bridge_vlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2198 sja1105_build_bridge_vlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2217 sja1105_build_dsa_8021q_vlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2218 sja1105_build_dsa_8021q_vlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2220 sja1105_build_dsa_8021q_vlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2270 sja1105_build_subvlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2271 sja1105_build_subvlans() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2272 sja1105_build_subvlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2273 sja1105_build_subvlans() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2278 sja1105_build_subvlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2280 sja1105_build_subvlans() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2296 sja1105_build_subvlans() warn: should '(((1))) << (v->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2297 sja1105_build_subvlans() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2437 sja1105_build_crosschip_subvlans() warn: should '(((1))) << (tmp->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2438 sja1105_build_crosschip_subvlans() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2446 sja1105_build_crosschip_subvlans() warn: should '(((1))) << (tmp->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2447 sja1105_build_crosschip_subvlans() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2472 sja1105_build_crosschip_subvlans() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2473 sja1105_build_crosschip_subvlans() warn: should '(((1))) << (tmp->port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2879 sja1105_best_effort_vlan_filtering_set() error: uninitialized symbol 'rc'.
drivers/net/dsa/sja1105/sja1105_main.c:3094 sja1105_mgmt_xmit() warn: should '(((1))) << port' be a 64 bit type?

vim +3418 drivers/net/dsa/sja1105/sja1105_main.c

  3395	
  3396	static int sja1105_check_device_id(struct sja1105_private *priv)
  3397	{
  3398		const struct sja1105_regs *regs = priv->info->regs;
  3399		u8 prod_id[SJA1105_SIZE_DEVICE_ID] = {0};
  3400		struct device *dev = &priv->spidev->dev;
  3401		const struct of_device_id *match;
  3402		u32 device_id;
  3403		u64 part_no;
  3404		int rc;
  3405	
  3406		rc = sja1105_xfer_u32(priv, SPI_READ, regs->device_id, &device_id,
  3407				      NULL);
  3408		if (rc < 0)
  3409			return rc;
  3410	
  3411		rc = sja1105_xfer_buf(priv, SPI_READ, regs->prod_id, prod_id,
  3412				      SJA1105_SIZE_DEVICE_ID);
  3413		if (rc < 0)
  3414			return rc;
  3415	
  3416		sja1105_unpack(prod_id, &part_no, 19, 4, SJA1105_SIZE_DEVICE_ID);
  3417	
> 3418		for (match = sja1105_dt_ids; match->compatible; match++) {
  3419			const struct sja1105_info *info = match->data;
  3420	
  3421			/* Is what's been probed in our match table at all? */
  3422			if (info->device_id != device_id || info->part_no != part_no)
  3423				continue;
  3424	
  3425			/* But is it what's in the device tree? */
  3426			if (priv->info->device_id != device_id ||
  3427			    priv->info->part_no != part_no) {
  3428				dev_warn(dev, "Device tree specifies chip %s but found %s, please fix it!\n",
  3429					 priv->info->name, info->name);
  3430				/* It isn't. No problem, pick that up. */
  3431				priv->info = info;
  3432			}
  3433	
  3434			return 0;
  3435		}
  3436	
  3437		dev_err(dev, "Unexpected {device ID, part number}: 0x%x 0x%llx\n",
  3438			device_id, part_no);
  3439	
  3440		return -ENODEV;
  3441	}
  3442	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ