From: dingtianhong Date: Fri, 7 Mar 2014 10:45:31 +0000 (+0800) Subject: vlan: use use ether_addr_equal_64bits to instead of ether_addr_equal X-Git-Tag: v5.15~18171^2~201 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=be14cc98e9fd5416cc8f86799913fd3c52dc720e;p=platform%2Fkernel%2Flinux-starfive.git vlan: use use ether_addr_equal_64bits to instead of ether_addr_equal 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, so it is safe to use it for vlan, and make sense for fast path. Cc: Joe Perches Cc: Patrick McHardy Cc: David S. Miller Signed-off-by: Ding Tianhong Signed-off-by: David S. Miller --- diff --git a/net/8021q/vlan_core.c b/net/8021q/vlan_core.c index 97815ec..35b3c19 100644 --- a/net/8021q/vlan_core.c +++ b/net/8021q/vlan_core.c @@ -26,7 +26,7 @@ bool vlan_do_receive(struct sk_buff **skbp) /* Our lower layer thinks this is not local, let's make sure. * This allows the VLAN to have a different MAC than the * underlying device, and still route correctly. */ - if (ether_addr_equal(eth_hdr(skb)->h_dest, vlan_dev->dev_addr)) + if (ether_addr_equal_64bits(eth_hdr(skb)->h_dest, vlan_dev->dev_addr)) skb->pkt_type = PACKET_HOST; }