Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 631c5273 authored by Julia Lawall's avatar Julia Lawall Committed by John W. Linville
Browse files

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: default avatarJulia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 103671f4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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);