Broadcom bge and 802.1Q vlan tags
Ruslan Ermilov
ru at freebsd.org
Tue Oct 12 23:42:46 PDT 2004
Hi Sam,
On Tue, Oct 12, 2004 at 01:20:07PM -0700, Sam Leffler wrote:
> >>This pessimizes normal traffic.
> >
> >m_tag_locate() doesn't look like a very expensive function. And
> >with the "normal traffic", I don't expect to be more than one tag,
> >no? Also, if if_nvlans > 0, this is already "pessimized".
> >
> >
> >>We should look for a solution in the
> >>driver(s) to avoid sending packets up with tags when no vlans are
> >>configured.
> >>
> >
> >I'd be opposed to such a change in behavior. The VLAN consumer can
> >be not only vlan(4), it can equally be the ng_vlan(4) node, etc.
>
> I'm not sure what you are opposed to or why. The issue I have is that
> m_tag_locate can be expensive if many packets have tags. The check for
> the existence of vlans configured on the interface short-circuits this
> work. That vlan-tagged packets may be generated when no vlans are
> configured seems wrong to me and breaks the assumption used to write the
> code. Changing the driver to drop the frame if ifp->if_nvlans is zero
> seems straightforward and could probably be hidden in the existing macro.
>
Please take a moment and re-read what I've already said: vlan(4) is not
the only consumer of VLAN frames: ng_vlan(4) is another such one, and I
have a proprietary Netgraph node here that demultiplexes VLANs. If you
start dropping VLAN frames in drivers when if_nvlans == 0, this will be
a problem for me. Is that clear now?
Cheers,
--
Ruslan Ermilov
ru at FreeBSD.org
FreeBSD committer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20041013/d228ac56/attachment.bin
More information about the freebsd-current
mailing list