82599 receiving packets with vlan tag=0 (vlan strip problem)?

Jack Vogel jfvogel at gmail.com
Fri Nov 26 20:46:14 UTC 2010


Ahh, OK, so how would this solution work:

In rxeof, in addition to requiring VP to be set, also check that
adapter->num_vlans
is non-zero, in order to store the tag.

Jack


On Fri, Nov 26, 2010 at 12:42 PM, Ryan Stone <rysto32 at gmail.com> wrote:

> If vlan stripping is disabled on the 82599(i.e. RXDCTL.VME is 0 for
> that queue is clear) and a vlan-tagged packet is received, then the
> descriptor for that packet will have the VP bit set even though the
> vlan was not stripped, and the VLAN Tag field in the descriptor is set
> to 0.  ixgbe_rxeof will see that the VP bit is set and set the
> M_VLANTAG on the mbuf, and put 0 in m_pkthdr.ether_vtag.  This means
> that the stack will treat the packet as if it was double vlan tagged,
> with outer tag being 0.
>
> Ryan Stone
>


More information about the freebsd-net mailing list