at76c50x-usb: use ether_addr_equal_64bits
Ether_addr_equal_64bits is more efficient than ether_addr_equal, and can be used when each argument is an array within a structure that contains at least two bytes of data beyond the array. The structures involved are: at76_priv defined in drivers/net/wireless/at76c50x-usb.h and ieee80211_mgmt defined in include/linux/ieee80211.h This was done using Coccinelle (http://coccinelle.lip6.fr/). Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
103671f4d9
commit
631c527373
|
@ -1721,7 +1721,7 @@ static void at76_mac80211_tx(struct ieee80211_hw *hw,
|
|||
* following workaround is necessary. If the TX frame is an
|
||||
* authentication frame extract the bssid and send the CMD_JOIN. */
|
||||
if (mgmt->frame_control & cpu_to_le16(IEEE80211_STYPE_AUTH)) {
|
||||
if (!ether_addr_equal(priv->bssid, mgmt->bssid)) {
|
||||
if (!ether_addr_equal_64bits(priv->bssid, mgmt->bssid)) {
|
||||
memcpy(priv->bssid, mgmt->bssid, ETH_ALEN);
|
||||
ieee80211_queue_work(hw, &priv->work_join_bssid);
|
||||
dev_kfree_skb_any(skb);
|
||||
|
|
Loading…
Reference in New Issue