From: Greg Rose Date: Tue, 2 Oct 2012 00:50:52 +0000 (+0000) Subject: ixgbevf: Do not forward LLDP type frames X-Git-Tag: v3.8-rc1~139^2~526^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f9d08f165b8a5a4af6f827318e692b57bc683825;p=platform%2Fkernel%2Flinux-exynos.git ixgbevf: Do not forward LLDP type frames The driver should not forward LLDP type frames. Inspect the ether type and do not send if it is an LLDP ethertype frame. Signed-off-by: Greg Rose Tested-by: Sibai Li Signed-off-by: Jeff Kirsher --- diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c index 07d7eab..b5979ba 100644 --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c @@ -2968,6 +2968,11 @@ static int ixgbevf_xmit_frame(struct sk_buff *skb, struct net_device *netdev) #if PAGE_SIZE > IXGBE_MAX_DATA_PER_TXD unsigned short f; #endif + u8 *dst_mac = skb_header_pointer(skb, 0, 0, NULL); + if (!dst_mac || is_link_local(dst_mac)) { + dev_kfree_skb(skb); + return NETDEV_TX_OK; + } tx_ring = &adapter->tx_ring[r_idx];