macvlan: Use compare_ether_addr_64bits()
Subsystems (2)
PATCH 1/1 macvlan: Use compare_ether_addr_64bits()
To speedup ether addresses compares, we can use compare_ether_addr_64bits() (all operands are guaranteed to be at least 8 bytes long)
Signed-off-by Eric Dumazet <[email protected]>
---
drivers/net/macvlan.c +3 -3
@@ -54,7 +54,7 @@ static struct macvlan_dev *macvlan_hash_lookup(const struct macvlan_port *port,struct hlist_node *n;hlist_for_each_entry_rcu (vlan, n, &port->vlan_hash[addr[5 ]], hlist) { -if (!compare_ether_addr (vlan->dev->dev_addr, addr)) +if (!compare_ether_addr_64bits (vlan->dev->dev_addr, addr))return vlan; }return NULL ;
@@ -92,7 +92,7 @@ static int macvlan_addr_busy(const struct macvlan_port *port,* currently in use by the underlying device or * another macvlan. */ -if (memcmp (port->dev->dev_addr, addr,ETH_ALEN ) ==0 ) +if (!compare_ether_addr_64bits (port->dev->dev_addr, addr))return 1 ;if (macvlan_hash_lookup (port, addr))
@@ -130,7 +130,7 @@ static void macvlan_broadcast(struct sk_buff *skb, dev->stats.multicast++; nskb->dev = dev; -if (!compare_ether_addr (eth->h_dest, dev->broadcast)) +if (!compare_ether_addr_64bits (eth->h_dest, dev->broadcast)) nskb->pkt_type =PACKET_BROADCAST ;else nskb->pkt_type =PACKET_MULTICAST ;
From: Eric Dumazet <[email protected]>
Date: Tue, 01 Sep 2009 17:46:05 +0200
Quoted 4 lines
To speedup ether addresses compares, we can use
compare_ether_addr_64bits()(all operands are guaranteed to be at least 8 bytes long)Signed-off-by Eric Dumazet <[email protected]>
Applied.