sfc: Stop changing header offsets on TX
authorBen Hutchings <bhutchings@solarflare.com>
Thu, 28 Jun 2012 20:55:15 +0000 (21:55 +0100)
committerBen Hutchings <bhutchings@solarflare.com>
Tue, 17 Jul 2012 15:12:31 +0000 (16:12 +0100)
There is nothing in the VLAN driver or core VLAN support that
invalidates the TCP and IP header offsets.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
drivers/net/ethernet/sfc/tx.c

index cfa5f6db20bdc365c7a7b806133caedcb8c15c4e..9b225a7769f765a1f1bf3ef024ae3b73a18a66c2 100644 (file)
@@ -651,17 +651,8 @@ static __be16 efx_tso_check_protocol(struct sk_buff *skb)
        EFX_BUG_ON_PARANOID(((struct ethhdr *)skb->data)->h_proto !=
                            protocol);
        if (protocol == htons(ETH_P_8021Q)) {
-               /* Find the encapsulated protocol; reset network header
-                * and transport header based on that. */
                struct vlan_ethhdr *veh = (struct vlan_ethhdr *)skb->data;
                protocol = veh->h_vlan_encapsulated_proto;
-               skb_set_network_header(skb, sizeof(*veh));
-               if (protocol == htons(ETH_P_IP))
-                       skb_set_transport_header(skb, sizeof(*veh) +
-                                                4 * ip_hdr(skb)->ihl);
-               else if (protocol == htons(ETH_P_IPV6))
-                       skb_set_transport_header(skb, sizeof(*veh) +
-                                                sizeof(struct ipv6hdr));
        }
 
        if (protocol == htons(ETH_P_IP)) {