]> git.baikalelectronics.ru Git - kernel.git/commit
vlan: Do not put vlan headers back on bridge and macvlan ports
authorVlad Yasevich <vyasevich@gmail.com>
Mon, 16 Nov 2015 20:43:45 +0000 (15:43 -0500)
committerDavid S. Miller <davem@davemloft.net>
Tue, 17 Nov 2015 19:38:35 +0000 (14:38 -0500)
commit6c2b6a69dba8e92808682ee6b4f76d81137a5cc7
treed7eeee0f1222b51aa0803ab2c50fd0eabfaa2fa5
parentb2c9cb7b2566080da71fd8056aeddb88d8edbbef
vlan: Do not put vlan headers back on bridge and macvlan ports

When a vlan is configured with REORDER_HEADER set to 0, the vlan
header is put back into the packet and makes it appear that
the vlan header is still there even after it's been processed.
This posses a problem for bridge and macvlan ports.  The packets
passed to those device may be forwarded and at the time of the
forward, vlan headers end up being unexpectedly present.

With the patch, we make sure that we do not put the vlan header
back (when REORDER_HEADER is 0) if a bridge or macvlan has
been configured on top of the vlan device.

Signed-off-by: Vladislav Yasevich <vyasevic@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdevice.h
net/8021q/vlan_core.c