veth: Fix vlan_features so as to be able to use stacked vlan interfaces
authorToshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Tue, 18 Feb 2014 12:20:08 +0000 (21:20 +0900)
committerDavid S. Miller <davem@davemloft.net>
Thu, 20 Feb 2014 07:15:38 +0000 (02:15 -0500)
commit8d0d21f4053c07714802cbe8b1fe26913ec296cc
tree175b84daba5f41845a9f0bd999992c19078333d3
parentebe44f350e15d6142d4d74cbaec0dad976c36753
veth: Fix vlan_features so as to be able to use stacked vlan interfaces

Even if we create a stacked vlan interface such as veth0.10.20, it sends
single tagged frames (tagged with only vid 10).
Because vlan_features of a veth interface has the
NETIF_F_HW_VLAN_[CTAG/STAG]_TX bits, veth0.10 also has that feature, so
dev_hard_start_xmit(veth0.10) doesn't call __vlan_put_tag() and
vlan_dev_hard_start_xmit(veth0.10) overwrites vlan_tci.
This prevents us from using a combination of 802.1ad and 802.1Q
in containers, etc.

Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Acked-by: Flavio Leitner <fbl@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/veth.c