Forráskód Böngészése

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>
Jason Wang 12 éve
szülő
commit
0fbe0d47b1
1 módosított fájl, 1 hozzáadás és 1 törlés
  1. 1 1
      drivers/net/macvtap.c

+ 1 - 1
drivers/net/macvtap.c

@@ -873,7 +873,7 @@ static ssize_t macvtap_put_user(struct macvtap_queue *q,
 			__be16 h_vlan_proto;
 			__be16 h_vlan_proto;
 			__be16 h_vlan_TCI;
 			__be16 h_vlan_TCI;
 		} veth;
 		} veth;
-		veth.h_vlan_proto = htons(ETH_P_8021Q);
+		veth.h_vlan_proto = skb->vlan_proto;
 		veth.h_vlan_TCI = htons(vlan_tx_tag_get(skb));
 		veth.h_vlan_TCI = htons(vlan_tx_tag_get(skb));
 
 
 		vlan_offset = offsetof(struct vlan_ethhdr, h_vlan_proto);
 		vlan_offset = offsetof(struct vlan_ethhdr, h_vlan_proto);