aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/intel/igbvf
diff options
context:
space:
mode:
authorGreg Rose <gregory.v.rose@intel.com>2011-08-27 06:24:59 +0000
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2011-10-17 05:08:05 -0700
commit4d2d55ac94f52ea8787270ec29579ced83f5f96b (patch)
treebc3551fe21a5569051b34197b6f23c428da845a2 /drivers/net/ethernet/intel/igbvf
parentfd38f734cb8200529e281338514945fcbff2364b (diff)
downloadlinux-linaro-stable-4d2d55ac94f52ea8787270ec29579ced83f5f96b.tar.gz
igbvf: Fix trunk vlan
Changes to clean up the VLAN Rx path by Jiri Pirko broke trunk VLAN. Trunk VLANs in a VF driver are those set using "ip link set <pfdev> vf <n> <vlanid>" Signed-off-by: Greg Rose <gregory.v.rose@intel.com> CC: Jiri Pirko <jpirko@redhat.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/igbvf')
-rw-r--r--drivers/net/ethernet/intel/igbvf/netdev.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/intel/igbvf/netdev.c b/drivers/net/ethernet/intel/igbvf/netdev.c
index 32b3044fa45c..23cc40f22d6f 100644
--- a/drivers/net/ethernet/intel/igbvf/netdev.c
+++ b/drivers/net/ethernet/intel/igbvf/netdev.c
@@ -102,8 +102,8 @@ static void igbvf_receive_skb(struct igbvf_adapter *adapter,
{
if (status & E1000_RXD_STAT_VP) {
u16 vid = le16_to_cpu(vlan) & E1000_RXD_SPC_VLAN_MASK;
-
- __vlan_hwaccel_put_tag(skb, vid);
+ if (test_bit(vid, adapter->active_vlans))
+ __vlan_hwaccel_put_tag(skb, vid);
}
netif_receive_skb(skb);
}