[bug report] staging: ks7010: add new helpers to achieve mib set request and simplify code

Dan Carpenter dan.carpenter at oracle.com
Wed Jul 11 14:19:15 UTC 2018


Hello Sergio Paracuellos,

The patch 8ce76bff0e6a: "staging: ks7010: add new helpers to achieve
mib set request and simplify code" from May 4, 2018, leads to the
following static checker warning:

	drivers/staging/ks7010/ks_hostif.c:1845 hostif_sme_multicast_set()
	warn: '2' cannot fit into 'bool'

drivers/staging/ks7010/ks_hostif.c
  1831  static
  1832  void hostif_sme_multicast_set(struct ks_wlan_private *priv)
  1833  {
  1834          struct net_device *dev = priv->net_dev;
  1835          int mc_count;
  1836          struct netdev_hw_addr *ha;
  1837          char set_address[NIC_MAX_MCAST_LIST * ETH_ALEN];
  1838          int i = 0;
  1839  
  1840          spin_lock(&priv->multicast_spin);
  1841  
  1842          memset(set_address, 0, NIC_MAX_MCAST_LIST * ETH_ALEN);
  1843  
  1844          if (dev->flags & IFF_PROMISC) {
  1845                  hostif_mib_set_request_bool(priv, LOCAL_MULTICAST_FILTER,
  1846                                              MCAST_FILTER_PROMISC);
                                                    ^^^^^^^^^^^^^^^^^^^^^
This is 2 but casted to MCAST_FILTER_MCASTALL because hostif_mib_set_request_bool() takes a
bool.

In the original code, we used to pass 2 but as MIB_VALUE_TYPE_BOOL type.
That's almost certainly buggy, but I don't know if it used to work on
not.

  1847                  goto spin_unlock;
  1848          }
  1849  
  1850          if ((netdev_mc_count(dev) > NIC_MAX_MCAST_LIST) ||
  1851              (dev->flags & IFF_ALLMULTI)) {
  1852                  hostif_mib_set_request_bool(priv, LOCAL_MULTICAST_FILTER,
  1853                                              MCAST_FILTER_MCASTALL);
  1854                  goto spin_unlock;
  1855          }

regards,
dan carpenter


More information about the devel mailing list