ipw2x00: use ether_addr_equal_64bits
authorJulia Lawall <Julia.Lawall@lip6.fr>
Mon, 30 Dec 2013 18:15:05 +0000 (19:15 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 3 Jan 2014 20:37:00 +0000 (15:37 -0500)
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 structure involved is
libipw_network defined in drivers/net/wireless/ipw2x00/libipw.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>
drivers/net/wireless/ipw2x00/libipw_rx.c

index 9ffe65931b293e4d6e4dd1f685dd75376e8dce96..ce2785948be15f0a513d857f1f171d629de7b6e2 100644 (file)
@@ -1468,7 +1468,7 @@ static inline int is_same_network(struct libipw_network *src,
         * as one network */
        return ((src->ssid_len == dst->ssid_len) &&
                (src->channel == dst->channel) &&
-               ether_addr_equal(src->bssid, dst->bssid) &&
+               ether_addr_equal_64bits(src->bssid, dst->bssid) &&
                !memcmp(src->ssid, dst->ssid, src->ssid_len));
 }