eth: Declare an optimized compare_ether_addr_64bits() function
[pandora-kernel.git] / net / ethernet / eth.c
index a87a171..280352a 100644 (file)
@@ -165,8 +165,8 @@ __be16 eth_type_trans(struct sk_buff *skb, struct net_device *dev)
        skb_pull(skb, ETH_HLEN);
        eth = eth_hdr(skb);
 
-       if (is_multicast_ether_addr(eth->h_dest)) {
-               if (!compare_ether_addr(eth->h_dest, dev->broadcast))
+       if (unlikely(is_multicast_ether_addr(eth->h_dest))) {
+               if (!compare_ether_addr_64bits(eth->h_dest, dev->broadcast))
                        skb->pkt_type = PACKET_BROADCAST;
                else
                        skb->pkt_type = PACKET_MULTICAST;
@@ -181,7 +181,7 @@ __be16 eth_type_trans(struct sk_buff *skb, struct net_device *dev)
         */
 
        else if (1 /*dev->flags&IFF_PROMISC */ ) {
-               if (unlikely(compare_ether_addr(eth->h_dest, dev->dev_addr)))
+               if (unlikely(compare_ether_addr_64bits(eth->h_dest, dev->dev_addr)))
                        skb->pkt_type = PACKET_OTHERHOST;
        }