enic: Pass 802.1p bits for packets tagged with vlan zero
authorVasanthy Kolluri <vkolluri@cisco.com>
Thu, 9 Jun 2011 10:36:52 +0000 (10:36 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Jun 2011 21:58:09 +0000 (14:58 -0700)
enic driver currently passes 802.1p bits to the upper layers for packets
tagged with non-zero vlan ids only. This patch extends such behaviour to
zero vlan tagged packets also.

The patch is dependant on the following kernel patches:

1) vlan_dev: VLAN 0 should be treated as "no vlan tag" (802.1p packet)
   - net-next-2.6 git commit: ad1afb00393915a51c21b1ae8704562bf036855f
   - Available 2.6.36 and later
2) vlan: Centralize handling of hardware acceleration.
  - net-next-2.6 git commit: 3701e51382a026cba10c60b03efabe534fba4ca4
  - Available 2.6.37 and later

Signed-off-by: Christian Benvenuti <benve@cisco.com>
Signed-off-by: Danny Guo <dannguo@cisco.com>
Signed-off-by: Vasanthy Kolluri <vkolluri@cisco.com>
Signed-off-by: Roopa Prabhu <roprabhu@cisco.com>
Signed-off-by: David Wang <dwang2@cisco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/enic/enic_main.c

index c7797ec..ea4aede 100644 (file)
@@ -1266,8 +1266,7 @@ static void enic_rq_indicate_buf(struct vnic_rq *rq,
 
                skb->dev = netdev;
 
-               if (enic->vlan_group && vlan_stripped &&
-                       (vlan_tci & CQ_ENET_RQ_DESC_VLAN_TCI_VLAN_MASK)) {
+               if (vlan_stripped) {
 
                        if (netdev->features & NETIF_F_GRO)
                                vlan_gro_receive(&enic->napi[q_number],