]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - net/8021q/vlan_dev.c
Merge branch 'kvm-updates/2.6.34' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[mirror_ubuntu-bionic-kernel.git] / net / 8021q / vlan_dev.c
index c1b92cab46c70d777f3b48b8307ad7cb877e258c..9e83272fc5b022e6a4b765888f06647ce0d92f67 100644 (file)
@@ -263,11 +263,10 @@ static int vlan_dev_hard_header(struct sk_buff *skb, struct net_device *dev,
                vhdr->h_vlan_TCI = htons(vlan_tci);
 
                /*
-                *  Set the protocol type. For a packet of type ETH_P_802_3 we
-                *  put the length in here instead. It is up to the 802.2
-                *  layer to carry protocol information.
+                *  Set the protocol type. For a packet of type ETH_P_802_3/2 we
+                *  put the length in here instead.
                 */
-               if (type != ETH_P_802_3)
+               if (type != ETH_P_802_3 && type != ETH_P_802_2)
                        vhdr->h_vlan_encapsulated_proto = htons(type);
                else
                        vhdr->h_vlan_encapsulated_proto = htons(len);
@@ -323,7 +322,7 @@ static netdev_tx_t vlan_dev_hard_start_xmit(struct sk_buff *skb,
        }
 
 
-       skb->dev = vlan_dev_info(dev)->real_dev;
+       skb_set_dev(skb, vlan_dev_info(dev)->real_dev);
        len = skb->len;
        ret = dev_queue_xmit(skb);