diff options
author | Alexander Duyck <alexander.h.duyck@intel.com> | 2011-07-20 00:09:10 +0000 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2011-08-29 01:05:38 -0700 |
commit | 09dca476e3201baac2dcbddc857b83aa25cbdf2e (patch) | |
tree | 63914fed08c000ff938e0c2e17dd26fbf2172072 /drivers | |
parent | 7f9643fd773a372a5470ed2daedaec5bac918e35 (diff) |
ixgbe: Always tag VLAN tagged packets
This change is meant to fix the patch:
ixgbe: Cleanup FCOE and VLAN handling in xmit_frame_ring
And can be rolled into it if needed.
What this fixes is that VLAN tagged packets were not being tagged if they
were prio 7 which matches up with TC_PRIO_CONTROL. In order to fix it I am
just setting things up so that we always tag VLAN tagged packets.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index d587967a6547..f095a3b479d7 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -6762,7 +6762,8 @@ netdev_tx_t ixgbe_xmit_frame_ring(struct sk_buff *skb, } if ((adapter->flags & IXGBE_FLAG_DCB_ENABLED) && - skb->priority != TC_PRIO_CONTROL) { + ((tx_flags & (IXGBE_TX_FLAGS_HW_VLAN | IXGBE_TX_FLAGS_SW_VLAN)) || + (skb->priority != TC_PRIO_CONTROL))) { tx_flags &= ~IXGBE_TX_FLAGS_VLAN_PRIO_MASK; tx_flags |= tx_ring->dcb_tc << IXGBE_TX_FLAGS_VLAN_PRIO_SHIFT; |