diff options
author | Jason Wang <jasowang@redhat.com> | 2013-07-16 01:36:34 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-07-16 16:01:57 -0400 |
commit | 0fbe0d47b1ee2015c288abd4e7b32224f8bfa212 (patch) | |
tree | aa267745771e6bdbe09e2200e1fda93b75bebbd1 | |
parent | 82a19eb8c02ab98bfe0bf6fa4915de370acb2858 (diff) |
macvtap: do not assume 802.1Q when send vlan packets
The hard-coded 8021.q proto will break 802.1ad traffic. So switch to use
vlan->proto.
Cc: Basil Gor <basil.gor@gmail.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/macvtap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c index 0e5492ec753a..a7c5654a2e5c 100644 --- a/drivers/net/macvtap.c +++ b/drivers/net/macvtap.c | |||
@@ -873,7 +873,7 @@ static ssize_t macvtap_put_user(struct macvtap_queue *q, | |||
873 | __be16 h_vlan_proto; | 873 | __be16 h_vlan_proto; |
874 | __be16 h_vlan_TCI; | 874 | __be16 h_vlan_TCI; |
875 | } veth; | 875 | } veth; |
876 | veth.h_vlan_proto = htons(ETH_P_8021Q); | 876 | veth.h_vlan_proto = skb->vlan_proto; |
877 | veth.h_vlan_TCI = htons(vlan_tx_tag_get(skb)); | 877 | veth.h_vlan_TCI = htons(vlan_tx_tag_get(skb)); |
878 | 878 | ||
879 | vlan_offset = offsetof(struct vlan_ethhdr, h_vlan_proto); | 879 | vlan_offset = offsetof(struct vlan_ethhdr, h_vlan_proto); |