cvs commit: src/sys/dev/bce if_bce.c src/sys/dev/bge if_bge.c src/sys/dev/em if_em.c src/sys/dev/ixgb if_ixgb.c src/sys/dev/nfe if_nfe.c src/sys/dev/nge if_nge.c src/sys/dev/re if_re.c src/sys/dev/stge if_stge.c src/sys/dev/ti if_ti.c src/sys/dev/txp ...

Ruslan Ermilov ru at
Sun Sep 17 15:06:07 PDT 2006

On Sun, Sep 17, 2006 at 01:33:30PM +0000, Andre Oppermann wrote:
> andre       2006-09-17 13:33:30 UTC
>   Move ethernet VLAN tags from mtags to its own mbuf packet header field
>   m_pkthdr.ether_vlan.  The presence of the M_VLANTAG flag on the mbuf
>   signifies the presence and validity of its content.
>   Drivers that support hardware VLAN tag stripping fill in the received
>   VLAN tag (containing both vlan and priority information) into the
>   ether_vtag mbuf packet header field:
>           m->m_pkthdr.ether_vtag = vlan_id;       /* ntohs()? */
>           m->m_flags |= M_VLANTAG;
>   to mark the packet m with the specified VLAN tag.
>   On output the driver should check the mbuf for the M_VLANTAG flag to
>   see if a VLAN tag is present and valid:
>           if (m->m_flags & M_VLANTAG) {
>                   ... = m->m_pkthdr.ether_vtag;   /* htons()? */
>                   ... pass tag to hardware ...
>           }
>   VLAN tags are stored in host byte order.  Byte swapping may be necessary.
>   (Note: This driver conversion was mechanic and did not add or remove any
>   byte swapping in the drivers.)
>   Remove zone_mtag_vlan UMA zone and MTAG_VLAN definition.  No more tag
>   memory allocation have to be done.
>   Reviewed by:    thompsa, yar
>   Sponsored by:   TCP/IP Optimization Fundraise 2005
I think this deserved a __FreeBSD_version bump for third-party
Ethernet drivers, since this change removes public interfaces

Ruslan Ermilov
ru at
FreeBSD committer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url :

More information about the cvs-src mailing list