Date: Sun, 17 Sep 2006 15:57:34 +0200 From: Andre Oppermann <andre@freebsd.org> To: freebsd-current@freebsd.org Cc: freebsd-net@freebsd.org Subject: HEADS-UP: VLAN tag changes committed Message-ID: <450D544E.3070500@freebsd.org>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
FYI.
[-- Attachment #2 --]
X-Account-Key: account3
Return-Path: <owner-src-committers@FreeBSD.org>
Delivered-To: andre@networx.ch
Received: (qmail 63885 invoked from network); 17 Sep 2006 13:17:10 -0000
Received: from mx2.freebsd.org ([216.136.204.119])
(envelope-sender <owner-src-committers@FreeBSD.org>)
by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP
for <andre@networx.ch>; 17 Sep 2006 13:17:10 -0000
Received: from hub.freebsd.org (hub.freebsd.org [216.136.204.18])
by mx2.freebsd.org (Postfix) with ESMTP id 96C865C2AA
for <andre@networx.ch>; Sun, 17 Sep 2006 13:33:33 +0000 (GMT)
(envelope-from owner-src-committers@FreeBSD.org)
Received: by hub.freebsd.org (Postfix)
id 1039F16A47C; Sun, 17 Sep 2006 13:33:32 +0000 (UTC)
Delivered-To: andre@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 538)
id 0027A16A40F; Sun, 17 Sep 2006 13:33:31 +0000 (UTC)
X-Original-To: src-committers@FreeBSD.org
Delivered-To: src-committers@FreeBSD.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
by hub.freebsd.org (Postfix) with ESMTP id E8DCE16A407;
Sun, 17 Sep 2006 13:33:30 +0000 (UTC)
(envelope-from andre@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115])
by mx1.FreeBSD.org (Postfix) with ESMTP id 8E56D43D46;
Sun, 17 Sep 2006 13:33:30 +0000 (GMT)
(envelope-from andre@FreeBSD.org)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k8HDXUvq029747;
Sun, 17 Sep 2006 13:33:30 GMT
(envelope-from andre@repoman.freebsd.org)
Received: (from andre@localhost)
by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k8HDXUht029746;
Sun, 17 Sep 2006 13:33:30 GMT (envelope-from andre)
Message-Id: <200609171333.k8HDXUht029746@repoman.freebsd.org>
From: Andre Oppermann <andre@FreeBSD.org>
Date: Sun, 17 Sep 2006 13:33:30 +0000 (UTC)
To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject: 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 ...
X-FreeBSD-CVS-Branch: HEAD
Sender: owner-src-committers@FreeBSD.org
Precedence: bulk
X-Loop: FreeBSD.ORG
andre 2006-09-17 13:33:30 UTC
FreeBSD src repository
Modified files:
sys/dev/bce if_bce.c
sys/dev/bge if_bge.c
sys/dev/em if_em.c
sys/dev/ixgb if_ixgb.c
sys/dev/nfe if_nfe.c
sys/dev/nge if_nge.c
sys/dev/re if_re.c
sys/dev/stge if_stge.c
sys/dev/ti if_ti.c
sys/dev/txp if_txp.c
sys/dev/vge if_vge.c
sys/net if_vlan.c if_vlan_var.h
sys/net80211 ieee80211_input.c ieee80211_output.c
sys/netgraph ng_vlan.c
sys/sys mbuf.h
Log:
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
Revision Changes Path
1.8 +4 -7 src/sys/dev/bce/if_bce.c
1.146 +4 -6 src/sys/dev/bge/if_bge.c
1.145 +7 -12 src/sys/dev/em/if_em.c
1.20 +13 -4 src/sys/dev/ixgb/if_ixgb.c
1.5 +5 -16 src/sys/dev/nfe/if_nfe.c
1.89 +5 -8 src/sys/dev/nge/if_nge.c
1.75 +6 -9 src/sys/dev/re/if_re.c
1.3 +6 -6 src/sys/dev/stge/if_stge.c
1.125 +4 -7 src/sys/dev/ti/if_ti.c
1.42 +4 -7 src/sys/dev/txp/if_txp.c
1.26 +5 -8 src/sys/dev/vge/if_vge.c
1.115 +5 -17 src/sys/net/if_vlan.c
1.25 +16 -39 src/sys/net/if_vlan_var.h
1.95 +2 -10 src/sys/net80211/ieee80211_input.c
1.43 +2 -3 src/sys/net80211/ieee80211_output.c
1.4 +8 -8 src/sys/netgraph/ng_vlan.c
1.196 +1 -4 src/sys/sys/mbuf.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?450D544E.3070500>
