}
  EXPORT_SYMBOL(skb_checksum_help);
  
 -/**
 - *    skb_mac_gso_segment - mac layer segmentation handler.
 - *    @skb: buffer to segment
 - *    @features: features for the output path (see dev->features)
 - */
 -struct sk_buff *skb_mac_gso_segment(struct sk_buff *skb,
 -                                  netdev_features_t features)
 +__be16 skb_network_protocol(struct sk_buff *skb)
  {
 -      struct sk_buff *segs = ERR_PTR(-EPROTONOSUPPORT);
 -      struct packet_offload *ptype;
        __be16 type = skb->protocol;
+       int vlan_depth = ETH_HLEN;
  
        while (type == htons(ETH_P_8021Q)) {
-               int vlan_depth = ETH_HLEN;
                struct vlan_hdr *vh;
  
                if (unlikely(!pskb_may_pull(skb, vlan_depth + VLAN_HLEN)))