Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Jul 2005 17:58:58 +0400
From:      "Yuriy N. Shkandybin" <jura@networks.ru>
To:        <bug-followup@FreeBSD.org>, "Yuriy N. Shkandybin" <jura@networks.ru>
Cc:        freebsd-net@freebsd.org
Subject:   Re: kern/83011: nge vlans broken
Message-ID:  <02bc01c583c5$300fe070$6504010a@Jura>

next in thread | raw e-mail | index | archive | help
I've invistigated that m_head mbuf doesn't have M_VLANTAG when performing 
VLAN_OUTPUT()

next diff for /usr/src/sys/net/if_vlan_var.h make it work:
--- 1.h Fri Jul  8 17:34:31 2005
+++ if_vlan_var.h       Fri Jul  8 17:35:53 2005
@@ -111,7 +111,7 @@
 } while (0)

 #define        VLAN_OUTPUT_TAG(_ifp, _m)                               \
-       ((_m)->m_flags & M_VLANTAG ?                            \
+       ((_ifp)->if_nvlans != 0 ?                               \
                m_tag_locate((_m), MTAG_VLAN, MTAG_VLAN_TAG, NULL) : NULL)
 #define        VLAN_TAG_VALUE(_mt)     (*(u_int *)((_mt)+1))
 #endif /* _KERNEL */


Actually this is partial backout ru@ commit
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/net/if_vlan_var.h.diff?r1=1.20&r2=1.21&f=h

Since it's not adressed to if_nge itself, so it's possible same problems for 
another interfaces.

Jura





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?02bc01c583c5$300fe070$6504010a>