| Submitter | Jeff Kirsher |
|---|---|
| Date | July 18, 2012, 2:23 a.m. |
| Message ID | <1342578236-20036-1-git-send-email-jeffrey.t.kirsher@intel.com> |
| Download | mbox | patch |
| Permalink | /patch/171594/ |
| State | Deferred |
| Headers | show |
Comments
On Tue, 2012-07-17 at 19:23 -0700, Jeff Kirsher wrote: > From: Pascal Bouchareine <pascal@gandi.net> > > We have had an issue when using ixgbe+ixgbevf and 802.1 VLAN tagging. > > When attaching a VLAN to a VF, frames with a 802.1q priority appeared > untagged on the VF hence not reaching the VLAN, where frames with > priority 0 where tagged as expected and seen by the VLAN device. > > This seems due to the way ixgbevf is looking up the full tag > (prio+cfi+vlan) against the adapter active_vlans, as a condition to > mark > the skb tagged. > > Signed-off-by: Pascal Bouchareine <pascal@gandi.net> > Tested-by: Sibai Li <sibai.li@intel.com> > Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> > --- > drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Dave- Disregard, I just read your message about "that's it for net". I will push this into my net-next tree. Cheers, Jeff
Patch
diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c index 41e3225..c16d32f 100644 --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c @@ -304,7 +304,7 @@ static void ixgbevf_receive_skb(struct ixgbevf_q_vector *q_vector, bool is_vlan = (status & IXGBE_RXD_STAT_VP); u16 tag = le16_to_cpu(rx_desc->wb.upper.vlan); - if (is_vlan && test_bit(tag, adapter->active_vlans)) + if (is_vlan && test_bit(tag & VLAN_VID_MASK, adapter->active_vlans)) __vlan_hwaccel_put_tag(skb, tag); if (!(adapter->flags & IXGBE_FLAG_IN_NETPOLL))