cvs commit: src/sys/dev/em if_em.c

John Baldwin jhb at
Fri Sep 29 11:23:58 PDT 2006

On Friday 29 September 2006 09:47, Andre Oppermann wrote:
> andre       2006-09-29 13:47:39 UTC
>   FreeBSD src repository
>   Modified files:
>     sys/dev/em           if_em.c 
>   Log:
>   Remove manual vlan header insertion in em_encap().  It is unnecessary as 
>   generic vlan_start() takes care of it when vlan hardware insertion is 
>   In em_set_promisc() add a note that BPF may also be enabled without going 
>   promisc mode.
>   Reviewed by:    jfv

Umm, you just broke things.  You are still disabling vlan header insertion in 
hardware but you haven't turned off the capability (which you can't do safely 
anyway since you still might have packets in flight that have a vlan tag 
after you turn off the capability) so the generic vlan layer is going to keep 
sending packets with vlan tags.  The more complete patch I had sent to 
Prafulla, Jack, and others stopped disabling vlan tagging in hardware 
altogether and instead is going to require the other parts of the stack (like 
bpf) to handle vlan tags that are in mtag (or in 7.x, in the mbuf header) 
rather than inline in the packet data.

John Baldwin

More information about the cvs-src mailing list