> On Fri, 02 Mar 2007 13:26:38 -0800 (PST)
> David Miller <davem@dave...> wrote:
> > From: Stephen Hemminger <shemminger@linu...>
> > Date: Wed, 28 Feb 2007 17:18:46 -0800
> > > I was measuring bridging/routing performance and noticed this.
> > >
> > > The current code runs the "all packet" type handlers before calling the
> > > bridge hook. If an application (like some DHCP clients) is using AF_PACKET,
> > > this means that each received packet gets run through the Berkeley Packet Filter
> > > code in sk_run_filter (slow).
> > I know we closed this out by saying that even though performance
> > sucks, we can't really apply this without breaking things.
I disagee, and your patch is still broken because as Jamal
pointed out (which you didn't address in any way) this breaks
traffic classification of bridged traffic as well.
If someone wants their network tap to hear all traffic, they do mean
all traffic, and this includes potentially seeing it multiple times
when things like bridging and virtual devices decap incoming frames.