[PATCH 2/4] Staging: rtl8712: Use ether_addr_equal() over memcmp()

kbuild test robot lkp at intel.com
Sun Oct 11 00:37:53 UTC 2015


Hi Punit,

[auto build test WARNING on v4.3-rc4 -- if it's inappropriate base, please ignore]

reproduce:
        # apt-get install sparse
        make ARCH=x86_64 allmodconfig
        make C=1 CF=-D__CHECK_ENDIAN__


sparse warnings: (new ones prefixed by >>)

   drivers/staging/rtl8712/rtl871x_ioctl_linux.c:227:15: sparse: cast to restricted __le16
>> drivers/staging/rtl8712/rtl871x_ioctl_linux.c:2010:54: sparse: incorrect type in argument 2 (different base types)
   drivers/staging/rtl8712/rtl871x_ioctl_linux.c:2010:54:    expected unsigned char const [usertype] *addr2
   drivers/staging/rtl8712/rtl871x_ioctl_linux.c:2010:54:    got struct wlan_bssid_ex network
   drivers/staging/rtl8712/rtl871x_ioctl_linux.c: In function 'r871x_get_ap_info':
   drivers/staging/rtl8712/rtl871x_ioctl_linux.c:2010:32: error: incompatible type for argument 2 of 'ether_addr_equal'
      if (!ether_addr_equal(bssid, pnetwork->network)) {
                                   ^
   In file included from drivers/staging/rtl8712/osdep_service.h:39:0,
                    from drivers/staging/rtl8712/rtl871x_ioctl_linux.c:32:
   include/linux/etherdevice.h:310:20: note: expected 'const u8 * {aka const unsigned char *}' but argument is of type 'struct wlan_bssid_ex'
    static inline bool ether_addr_equal(const u8 *addr1, const u8 *addr2)
                       ^

vim +2010 drivers/staging/rtl8712/rtl871x_ioctl_linux.c

  1994			 return -EINVAL;
  1995		spin_lock_irqsave(&(pmlmepriv->scanned_queue.lock), irqL);
  1996		phead = &queue->queue;
  1997		plist = phead->next;
  1998		while (1) {
  1999			if (end_of_queue_search(phead, plist) == true)
  2000				break;
  2001			pnetwork = LIST_CONTAINOR(plist, struct wlan_network, list);
  2002			if (hwaddr_aton_i(data, bssid)) {
  2003				netdev_info(dev, "r8712u: Invalid BSSID '%s'.\n",
  2004					    (u8 *)data);
  2005				spin_unlock_irqrestore(&(pmlmepriv->scanned_queue.lock),
  2006						       irqL);
  2007				return -EINVAL;
  2008			}
  2009			netdev_info(dev, "r8712u: BSSID:%pM\n", bssid);
> 2010			if (!ether_addr_equal(bssid, pnetwork->network)) {
  2011				/* BSSID match, then check if supporting wpa/wpa2 */
  2012				pbuf = r8712_get_wpa_ie(&pnetwork->network.IEs[12],
  2013				       &wpa_ielen, pnetwork->network.IELength-12);
  2014				if (pbuf && (wpa_ielen > 0)) {
  2015					pdata->flags = 1;
  2016					break;
  2017				}
  2018				pbuf = r8712_get_wpa2_ie(&pnetwork->network.IEs[12],

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation


More information about the devel mailing list