All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here
@ 2020-08-29  8:58 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2020-08-29  8:58 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 12721 bytes --]

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Vladimir Oltean <vladimir.oltean@nxp.com>
CC: Russell King <rmk+kernel@armlinux.org.uk>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4d41ead6ead97c3730bbd186a601a64828668f01
commit: ffe10e679cec9a99f19049459cb27c2fbb1e913a net: dsa: sja1105: Add support for the SGMII port
date:   5 months ago
:::::: branch date: 9 hours ago
:::::: commit date: 5 months ago
config: arm-randconfig-m031-20200829 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here

Old smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:44 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:45 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
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:186 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:189 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:195 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:200 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 1
drivers/net/dsa/sja1105/sja1105_main.c:1013 sja1105_find_static_fdb_entry() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1131 sja1105et_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1133 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1141 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1227 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1235 sja1105pqrs_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1240 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1290 sja1105pqrs_fdb_del() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1374 sja1105_fdb_dump() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1672 sja1105_vlan_apply() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1673 sja1105_vlan_apply() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1684 sja1105_vlan_apply() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1981 sja1105_mgmt_xmit() warn: should '(((1))) << port' be a 64 bit type?

# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ffe10e679cec9a99f19049459cb27c2fbb1e913a
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout ffe10e679cec9a99f19049459cb27c2fbb1e913a
vim +1608 drivers/net/dsa/sja1105/sja1105_main.c

2eea1fa82f681b Vladimir Oltean 2019-11-12  1508  
6666cebc5e306f Vladimir Oltean 2019-05-02  1509  /* For situations where we need to change a setting at runtime that is only
6666cebc5e306f Vladimir Oltean 2019-05-02  1510   * available through the static configuration, resetting the switch in order
6666cebc5e306f Vladimir Oltean 2019-05-02  1511   * to upload the new static config is unavoidable. Back up the settings we
6666cebc5e306f Vladimir Oltean 2019-05-02  1512   * modify@runtime (currently only MAC) and restore them after uploading,
6666cebc5e306f Vladimir Oltean 2019-05-02  1513   * such that this operation is relatively seamless.
6666cebc5e306f Vladimir Oltean 2019-05-02  1514   */
2eea1fa82f681b Vladimir Oltean 2019-11-12  1515  int sja1105_static_config_reload(struct sja1105_private *priv,
2eea1fa82f681b Vladimir Oltean 2019-11-12  1516  				 enum sja1105_reset_reason reason)
6666cebc5e306f Vladimir Oltean 2019-05-02  1517  {
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1518  	struct ptp_system_timestamp ptp_sts_before;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1519  	struct ptp_system_timestamp ptp_sts_after;
6666cebc5e306f Vladimir Oltean 2019-05-02  1520  	struct sja1105_mac_config_entry *mac;
6666cebc5e306f Vladimir Oltean 2019-05-02  1521  	int speed_mbps[SJA1105_NUM_PORTS];
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1522  	struct dsa_switch *ds = priv->ds;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1523  	s64 t1, t2, t3, t4;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1524  	s64 t12, t34;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1525  	u16 bmcr = 0;
6666cebc5e306f Vladimir Oltean 2019-05-02  1526  	int rc, i;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1527  	s64 now;
6666cebc5e306f Vladimir Oltean 2019-05-02  1528  
af580ae2dcb250 Vladimir Oltean 2019-11-09  1529  	mutex_lock(&priv->mgmt_lock);
af580ae2dcb250 Vladimir Oltean 2019-11-09  1530  
6666cebc5e306f Vladimir Oltean 2019-05-02  1531  	mac = priv->static_config.tables[BLK_IDX_MAC_CONFIG].entries;
6666cebc5e306f Vladimir Oltean 2019-05-02  1532  
8400cff60b472c Vladimir Oltean 2019-06-08  1533  	/* Back up the dynamic link speed changed by sja1105_adjust_port_config
8400cff60b472c Vladimir Oltean 2019-06-08  1534  	 * in order to temporarily restore it to SJA1105_SPEED_AUTO - which the
8400cff60b472c Vladimir Oltean 2019-06-08  1535  	 * switch wants to see in the static config in order to allow us to
8400cff60b472c Vladimir Oltean 2019-06-08  1536  	 * change it through the dynamic interface later.
6666cebc5e306f Vladimir Oltean 2019-05-02  1537  	 */
6666cebc5e306f Vladimir Oltean 2019-05-02  1538  	for (i = 0; i < SJA1105_NUM_PORTS; i++) {
6666cebc5e306f Vladimir Oltean 2019-05-02  1539  		speed_mbps[i] = sja1105_speed[mac[i].speed];
6666cebc5e306f Vladimir Oltean 2019-05-02  1540  		mac[i].speed = SJA1105_SPEED_AUTO;
6666cebc5e306f Vladimir Oltean 2019-05-02  1541  	}
6666cebc5e306f Vladimir Oltean 2019-05-02  1542  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1543  	if (sja1105_supports_sgmii(priv, SJA1105_SGMII_PORT))
ffe10e679cec9a Vladimir Oltean 2020-03-20  1544  		bmcr = sja1105_sgmii_read(priv, MII_BMCR);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1545  
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1546  	/* No PTP operations can run right now */
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1547  	mutex_lock(&priv->ptp_data.lock);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1548  
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1549  	rc = __sja1105_ptp_gettimex(ds, &now, &ptp_sts_before);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1550  	if (rc < 0)
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1551  		goto out_unlock_ptp;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1552  
6666cebc5e306f Vladimir Oltean 2019-05-02  1553  	/* Reset switch and send updated static configuration */
6666cebc5e306f Vladimir Oltean 2019-05-02  1554  	rc = sja1105_static_config_upload(priv);
6666cebc5e306f Vladimir Oltean 2019-05-02  1555  	if (rc < 0)
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1556  		goto out_unlock_ptp;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1557  
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1558  	rc = __sja1105_ptp_settime(ds, 0, &ptp_sts_after);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1559  	if (rc < 0)
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1560  		goto out_unlock_ptp;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1561  
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1562  	t1 = timespec64_to_ns(&ptp_sts_before.pre_ts);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1563  	t2 = timespec64_to_ns(&ptp_sts_before.post_ts);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1564  	t3 = timespec64_to_ns(&ptp_sts_after.pre_ts);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1565  	t4 = timespec64_to_ns(&ptp_sts_after.post_ts);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1566  	/* Mid point, corresponds to pre-reset PTPCLKVAL */
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1567  	t12 = t1 + (t2 - t1) / 2;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1568  	/* Mid point, corresponds to post-reset PTPCLKVAL, aka 0 */
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1569  	t34 = t3 + (t4 - t3) / 2;
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1570  	/* Advance PTPCLKVAL by the time it took since its readout */
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1571  	now += (t34 - t12);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1572  
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1573  	__sja1105_ptp_adjtime(ds, now);
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1574  
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1575  out_unlock_ptp:
6cf99c13ea07b5 Vladimir Oltean 2019-11-09  1576  	mutex_unlock(&priv->ptp_data.lock);
6666cebc5e306f Vladimir Oltean 2019-05-02  1577  
2eea1fa82f681b Vladimir Oltean 2019-11-12  1578  	dev_info(priv->ds->dev,
2eea1fa82f681b Vladimir Oltean 2019-11-12  1579  		 "Reset switch and programmed static config. Reason: %s\n",
2eea1fa82f681b Vladimir Oltean 2019-11-12  1580  		 sja1105_reset_reasons[reason]);
2eea1fa82f681b Vladimir Oltean 2019-11-12  1581  
6666cebc5e306f Vladimir Oltean 2019-05-02  1582  	/* Configure the CGU (PLLs) for MII and RMII PHYs.
6666cebc5e306f Vladimir Oltean 2019-05-02  1583  	 * For these interfaces there is no dynamic configuration
6666cebc5e306f Vladimir Oltean 2019-05-02  1584  	 * needed, since PLLs have same settings at all speeds.
6666cebc5e306f Vladimir Oltean 2019-05-02  1585  	 */
6666cebc5e306f Vladimir Oltean 2019-05-02  1586  	rc = sja1105_clocking_setup(priv);
6666cebc5e306f Vladimir Oltean 2019-05-02  1587  	if (rc < 0)
6666cebc5e306f Vladimir Oltean 2019-05-02  1588  		goto out;
6666cebc5e306f Vladimir Oltean 2019-05-02  1589  
6666cebc5e306f Vladimir Oltean 2019-05-02  1590  	for (i = 0; i < SJA1105_NUM_PORTS; i++) {
8400cff60b472c Vladimir Oltean 2019-06-08  1591  		rc = sja1105_adjust_port_config(priv, i, speed_mbps[i]);
6666cebc5e306f Vladimir Oltean 2019-05-02  1592  		if (rc < 0)
6666cebc5e306f Vladimir Oltean 2019-05-02  1593  			goto out;
6666cebc5e306f Vladimir Oltean 2019-05-02  1594  	}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1595  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1596  	if (sja1105_supports_sgmii(priv, SJA1105_SGMII_PORT)) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1597  		bool an_enabled = !!(bmcr & BMCR_ANENABLE);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1598  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1599  		sja1105_sgmii_pcs_config(priv, an_enabled, false);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1600  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1601  		if (!an_enabled) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1602  			int speed = SPEED_UNKNOWN;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1603  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1604  			if (bmcr & BMCR_SPEED1000)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1605  				speed = SPEED_1000;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1606  			else if (bmcr & BMCR_SPEED100)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1607  				speed = SPEED_100;
ffe10e679cec9a Vladimir Oltean 2020-03-20 @1608  			else if (bmcr & BMCR_SPEED10)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1609  				speed = SPEED_10;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1610  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1611  			sja1105_sgmii_pcs_force_speed(priv, speed);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1612  		}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1613  	}
6666cebc5e306f Vladimir Oltean 2019-05-02  1614  out:
af580ae2dcb250 Vladimir Oltean 2019-11-09  1615  	mutex_unlock(&priv->mgmt_lock);
af580ae2dcb250 Vladimir Oltean 2019-11-09  1616  
6666cebc5e306f Vladimir Oltean 2019-05-02  1617  	return rc;
6666cebc5e306f Vladimir Oltean 2019-05-02  1618  }
6666cebc5e306f Vladimir Oltean 2019-05-02  1619  

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 24564 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here
@ 2020-08-31 12:33 ` Dan Carpenter
  0 siblings, 0 replies; 4+ messages in thread
From: Dan Carpenter @ 2020-08-31 12:33 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 3350 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4d41ead6ead97c3730bbd186a601a64828668f01
commit: ffe10e679cec9a99f19049459cb27c2fbb1e913a net: dsa: sja1105: Add support for the SGMII port
config: arm-randconfig-m031-20200829 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here

# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ffe10e679cec9a99f19049459cb27c2fbb1e913a
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout ffe10e679cec9a99f19049459cb27c2fbb1e913a
vim +1608 drivers/net/dsa/sja1105/sja1105_main.c

6666cebc5e306f Vladimir Oltean 2019-05-02  1590  	for (i = 0; i < SJA1105_NUM_PORTS; i++) {
8400cff60b472c Vladimir Oltean 2019-06-08  1591  		rc = sja1105_adjust_port_config(priv, i, speed_mbps[i]);
6666cebc5e306f Vladimir Oltean 2019-05-02  1592  		if (rc < 0)
6666cebc5e306f Vladimir Oltean 2019-05-02  1593  			goto out;
6666cebc5e306f Vladimir Oltean 2019-05-02  1594  	}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1595  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1596  	if (sja1105_supports_sgmii(priv, SJA1105_SGMII_PORT)) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1597  		bool an_enabled = !!(bmcr & BMCR_ANENABLE);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1598  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1599  		sja1105_sgmii_pcs_config(priv, an_enabled, false);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1600  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1601  		if (!an_enabled) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1602  			int speed = SPEED_UNKNOWN;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1603  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1604  			if (bmcr & BMCR_SPEED1000)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1605  				speed = SPEED_1000;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1606  			else if (bmcr & BMCR_SPEED100)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1607  				speed = SPEED_100;
ffe10e679cec9a Vladimir Oltean 2020-03-20 @1608  			else if (bmcr & BMCR_SPEED10)
                                                                                 ^^^^^^^^^^^^^^^^^^^
This is an impossible condition.  BMCR_SPEED10 is zero.

ffe10e679cec9a Vladimir Oltean 2020-03-20  1609  				speed = SPEED_10;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1610  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1611  			sja1105_sgmii_pcs_force_speed(priv, speed);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1612  		}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1613  	}
6666cebc5e306f Vladimir Oltean 2019-05-02  1614  out:
af580ae2dcb250 Vladimir Oltean 2019-11-09  1615  	mutex_unlock(&priv->mgmt_lock);
af580ae2dcb250 Vladimir Oltean 2019-11-09  1616  
6666cebc5e306f Vladimir Oltean 2019-05-02  1617  	return rc;
6666cebc5e306f Vladimir Oltean 2019-05-02  1618  }

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 24564 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here
@ 2020-08-31 12:33 ` Dan Carpenter
  0 siblings, 0 replies; 4+ messages in thread
From: Dan Carpenter @ 2020-08-31 12:33 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 3350 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4d41ead6ead97c3730bbd186a601a64828668f01
commit: ffe10e679cec9a99f19049459cb27c2fbb1e913a net: dsa: sja1105: Add support for the SGMII port
config: arm-randconfig-m031-20200829 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here

# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ffe10e679cec9a99f19049459cb27c2fbb1e913a
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout ffe10e679cec9a99f19049459cb27c2fbb1e913a
vim +1608 drivers/net/dsa/sja1105/sja1105_main.c

6666cebc5e306f Vladimir Oltean 2019-05-02  1590  	for (i = 0; i < SJA1105_NUM_PORTS; i++) {
8400cff60b472c Vladimir Oltean 2019-06-08  1591  		rc = sja1105_adjust_port_config(priv, i, speed_mbps[i]);
6666cebc5e306f Vladimir Oltean 2019-05-02  1592  		if (rc < 0)
6666cebc5e306f Vladimir Oltean 2019-05-02  1593  			goto out;
6666cebc5e306f Vladimir Oltean 2019-05-02  1594  	}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1595  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1596  	if (sja1105_supports_sgmii(priv, SJA1105_SGMII_PORT)) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1597  		bool an_enabled = !!(bmcr & BMCR_ANENABLE);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1598  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1599  		sja1105_sgmii_pcs_config(priv, an_enabled, false);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1600  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1601  		if (!an_enabled) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1602  			int speed = SPEED_UNKNOWN;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1603  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1604  			if (bmcr & BMCR_SPEED1000)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1605  				speed = SPEED_1000;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1606  			else if (bmcr & BMCR_SPEED100)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1607  				speed = SPEED_100;
ffe10e679cec9a Vladimir Oltean 2020-03-20 @1608  			else if (bmcr & BMCR_SPEED10)
                                                                                 ^^^^^^^^^^^^^^^^^^^
This is an impossible condition.  BMCR_SPEED10 is zero.

ffe10e679cec9a Vladimir Oltean 2020-03-20  1609  				speed = SPEED_10;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1610  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1611  			sja1105_sgmii_pcs_force_speed(priv, speed);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1612  		}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1613  	}
6666cebc5e306f Vladimir Oltean 2019-05-02  1614  out:
af580ae2dcb250 Vladimir Oltean 2019-11-09  1615  	mutex_unlock(&priv->mgmt_lock);
af580ae2dcb250 Vladimir Oltean 2019-11-09  1616  
6666cebc5e306f Vladimir Oltean 2019-05-02  1617  	return rc;
6666cebc5e306f Vladimir Oltean 2019-05-02  1618  }

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 24564 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here
@ 2020-08-31 12:33 ` Dan Carpenter
  0 siblings, 0 replies; 4+ messages in thread
From: Dan Carpenter @ 2020-08-31 12:33 UTC (permalink / raw)
  To: kbuild, Vladimir Oltean
  Cc: lkp, Dan Carpenter, kbuild-all, linux-kernel, Russell King

[-- Attachment #1: Type: text/plain, Size: 3293 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4d41ead6ead97c3730bbd186a601a64828668f01
commit: ffe10e679cec9a99f19049459cb27c2fbb1e913a net: dsa: sja1105: Add support for the SGMII port
config: arm-randconfig-m031-20200829 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here

# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ffe10e679cec9a99f19049459cb27c2fbb1e913a
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout ffe10e679cec9a99f19049459cb27c2fbb1e913a
vim +1608 drivers/net/dsa/sja1105/sja1105_main.c

6666cebc5e306f Vladimir Oltean 2019-05-02  1590  	for (i = 0; i < SJA1105_NUM_PORTS; i++) {
8400cff60b472c Vladimir Oltean 2019-06-08  1591  		rc = sja1105_adjust_port_config(priv, i, speed_mbps[i]);
6666cebc5e306f Vladimir Oltean 2019-05-02  1592  		if (rc < 0)
6666cebc5e306f Vladimir Oltean 2019-05-02  1593  			goto out;
6666cebc5e306f Vladimir Oltean 2019-05-02  1594  	}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1595  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1596  	if (sja1105_supports_sgmii(priv, SJA1105_SGMII_PORT)) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1597  		bool an_enabled = !!(bmcr & BMCR_ANENABLE);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1598  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1599  		sja1105_sgmii_pcs_config(priv, an_enabled, false);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1600  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1601  		if (!an_enabled) {
ffe10e679cec9a Vladimir Oltean 2020-03-20  1602  			int speed = SPEED_UNKNOWN;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1603  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1604  			if (bmcr & BMCR_SPEED1000)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1605  				speed = SPEED_1000;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1606  			else if (bmcr & BMCR_SPEED100)
ffe10e679cec9a Vladimir Oltean 2020-03-20  1607  				speed = SPEED_100;
ffe10e679cec9a Vladimir Oltean 2020-03-20 @1608  			else if (bmcr & BMCR_SPEED10)
                                                                                 ^^^^^^^^^^^^^^^^^^^
This is an impossible condition.  BMCR_SPEED10 is zero.

ffe10e679cec9a Vladimir Oltean 2020-03-20  1609  				speed = SPEED_10;
ffe10e679cec9a Vladimir Oltean 2020-03-20  1610  
ffe10e679cec9a Vladimir Oltean 2020-03-20  1611  			sja1105_sgmii_pcs_force_speed(priv, speed);
ffe10e679cec9a Vladimir Oltean 2020-03-20  1612  		}
ffe10e679cec9a Vladimir Oltean 2020-03-20  1613  	}
6666cebc5e306f Vladimir Oltean 2019-05-02  1614  out:
af580ae2dcb250 Vladimir Oltean 2019-11-09  1615  	mutex_unlock(&priv->mgmt_lock);
af580ae2dcb250 Vladimir Oltean 2019-11-09  1616  
6666cebc5e306f Vladimir Oltean 2019-05-02  1617  	return rc;
6666cebc5e306f Vladimir Oltean 2019-05-02  1618  }

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 24564 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-08-31 12:37 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-31 12:33 drivers/net/dsa/sja1105/sja1105_main.c:1608 sja1105_static_config_reload() warn: bitwise AND condition is false here Dan Carpenter
2020-08-31 12:33 ` Dan Carpenter
2020-08-31 12:33 ` Dan Carpenter
  -- strict thread matches above, loose matches on Subject: below --
2020-08-29  8:58 kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.