aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sfc
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2012-06-28 16:55:15 -0400
committerBen Hutchings <bhutchings@solarflare.com>2012-07-17 11:12:31 -0400
commitf7cbb163d980fc79f47a3cba63dd130b1d655d1d (patch)
tree2e34cc08923e0e2c3324c422d8152cc54ed31e80 /drivers/net/ethernet/sfc
parente718905c4b02bfc650f383e02b643b7e60b9407e (diff)
sfc: Stop changing header offsets on TX
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>
Diffstat (limited to 'drivers/net/ethernet/sfc')
-rw-r--r--drivers/net/ethernet/sfc/tx.c9
1 files changed, 0 insertions, 9 deletions
diff --git a/drivers/net/ethernet/sfc/tx.c b/drivers/net/ethernet/sfc/tx.c
index cfa5f6db20bd..9b225a7769f7 100644
--- a/drivers/net/ethernet/sfc/tx.c
+++ b/drivers/net/ethernet/sfc/tx.c
@@ -651,17 +651,8 @@ static __be16 efx_tso_check_protocol(struct sk_buff *skb)
651 EFX_BUG_ON_PARANOID(((struct ethhdr *)skb->data)->h_proto != 651 EFX_BUG_ON_PARANOID(((struct ethhdr *)skb->data)->h_proto !=
652 protocol); 652 protocol);
653 if (protocol == htons(ETH_P_8021Q)) { 653 if (protocol == htons(ETH_P_8021Q)) {
654 /* Find the encapsulated protocol; reset network header
655 * and transport header based on that. */
656 struct vlan_ethhdr *veh = (struct vlan_ethhdr *)skb->data; 654 struct vlan_ethhdr *veh = (struct vlan_ethhdr *)skb->data;
657 protocol = veh->h_vlan_encapsulated_proto; 655 protocol = veh->h_vlan_encapsulated_proto;
658 skb_set_network_header(skb, sizeof(*veh));
659 if (protocol == htons(ETH_P_IP))
660 skb_set_transport_header(skb, sizeof(*veh) +
661 4 * ip_hdr(skb)->ihl);
662 else if (protocol == htons(ETH_P_IPV6))
663 skb_set_transport_header(skb, sizeof(*veh) +
664 sizeof(struct ipv6hdr));
665 } 656 }
666 657
667 if (protocol == htons(ETH_P_IP)) { 658 if (protocol == htons(ETH_P_IP)) {