Browse Source

igb: remove open-coded skb_cow_head

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Francois Romieu 11 years ago
parent
commit
06c14e5adb
1 changed files with 4 additions and 5 deletions
  1. 4 5
      drivers/net/ethernet/intel/igb/igb_main.c

+ 4 - 5
drivers/net/ethernet/intel/igb/igb_main.c

@@ -4605,6 +4605,7 @@ static int igb_tso(struct igb_ring *tx_ring,
 	struct sk_buff *skb = first->skb;
 	struct sk_buff *skb = first->skb;
 	u32 vlan_macip_lens, type_tucmd;
 	u32 vlan_macip_lens, type_tucmd;
 	u32 mss_l4len_idx, l4len;
 	u32 mss_l4len_idx, l4len;
+	int err;
 
 
 	if (skb->ip_summed != CHECKSUM_PARTIAL)
 	if (skb->ip_summed != CHECKSUM_PARTIAL)
 		return 0;
 		return 0;
@@ -4612,11 +4613,9 @@ static int igb_tso(struct igb_ring *tx_ring,
 	if (!skb_is_gso(skb))
 	if (!skb_is_gso(skb))
 		return 0;
 		return 0;
 
 
-	if (skb_header_cloned(skb)) {
-		int err = pskb_expand_head(skb, 0, 0, GFP_ATOMIC);
-		if (err)
-			return err;
-	}
+	err = skb_cow_head(skb, 0);
+	if (err < 0)
+		return err;
 
 
 	/* ADV DTYP TUCMD MKRLOC/ISCSIHEDLEN */
 	/* ADV DTYP TUCMD MKRLOC/ISCSIHEDLEN */
 	type_tucmd = E1000_ADVTXD_TUCMD_L4T_TCP;
 	type_tucmd = E1000_ADVTXD_TUCMD_L4T_TCP;