cw1200: atm: slight optimization of addr compare
Subsystems (3)
PATCH v2 16/20 cw1200: atm: slight optimization of addr compare
Use possibly more efficient ether_addr_equal
instead of memcmp.
Cc Solomon Peachy <[email protected]>
Cc John W. Linville <[email protected]>
Signed-off-by Weilong Chen <[email protected]>
Signed-off-by Ding Tianhong <[email protected]>
--- drivers/net/wireless/cw1200/sta.c | 5 +++-- drivers/net/wireless/cw1200/txrx.c | 3 +-- 2 files changed, 4 insertions(+), 4 deletions(-)
drivers/net/wireless/cw1200/sta.c +3 -2
@@ -13,6 +13,7 @@#include <linux/sched.h> #include <linux/firmware.h> #include <linux/module.h> +#include <linux/etherdevice.h> #include "cw1200.h" #include "sta.h"
@@ -555,8 +556,8 @@ u64 cw1200_prepare_multicast(struct ieee80211_hw *hw,pr_debug ("[STA] multicast: %pM\n" , ha->addr);memcpy (&priv->multicast_filter.macaddrs[count], ha->addr,ETH_ALEN ); -if (memcmp (ha->addr, broadcast_ipv4,ETH_ALEN ) && -memcmp (ha->addr, broadcast_ipv6,ETH_ALEN )) +if (!ether_addr_equal (ha->addr, broadcast_ipv4) && + !ether_addr_equal (ha->addr, broadcast_ipv6)) priv->has_multicast_subscription = true; count++; }
drivers/net/wireless/cw1200/txrx.c +1 -2
@@ -1166,8 +1166,7 @@ void cw1200_rx_cb(struct cw1200_common *priv,return ; }else if (ieee80211_is_beacon (frame->frame_control) && !arg->status && priv->vif && - !memcmp (ieee80211_get_SA (frame), priv->vif->bss_conf.bssid, -ETH_ALEN )) { +ether_addr_equal (ieee80211_get_SA (frame), priv->vif->bss_conf.bssid)) {const u8 *tim_ie;u8 *ies = ((struct ieee80211_mgmt *) (skb->data))->u.beacon.variable;
Signature · 1 line
1.8.0