On Wed, Jul 11, 2018 at 05:19:15PM +0300, Dan Carpenter wrote:
> 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.

Yes, you are totally right. This seems to be wrong. We should pass an int 
instead
of a bool to avoid this problem.

> 
> 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.

Me neither but it is clear this is not what th original code was doing.

> 
>   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

Best regards,
    Sergio Paracuellos
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to