aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/ixgbe
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@redhat.com>2014-12-03 11:17:39 -0500
committerDavid S. Miller <davem@davemloft.net>2014-12-08 20:47:42 -0500
commita94d9e224e3c48f57559183582c6410e7acf1d8b (patch)
treedce3ceb3bf34837c6cab7a13b3c0043fbe8eb720 /drivers/net/ethernet/intel/ixgbe
parent9c0c112422a2a6b06fcddcaf21957676490cebba (diff)
ethernet/intel: Use eth_skb_pad and skb_put_padto helpers
Update the Intel Ethernet drivers to use eth_skb_pad() and skb_put_padto instead of doing their own implementations of the function. Also this cleans up two other spots where skb_pad was called but the length and tail pointers were being manipulated directly instead of just having the padding length added via __skb_put. Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com> Acked-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/intel/ixgbe')
-rw-r--r--drivers/net/ethernet/intel/ixgbe/ixgbe_main.c19
1 files changed, 5 insertions, 14 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index 82d418729dd4..fbd52924ee34 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -1774,14 +1774,9 @@ static bool ixgbe_cleanup_headers(struct ixgbe_ring *rx_ring,
1774 return false; 1774 return false;
1775 1775
1776#endif 1776#endif
1777 /* if skb_pad returns an error the skb was freed */ 1777 /* if eth_skb_pad returns an error the skb was freed */
1778 if (unlikely(skb->len < 60)) { 1778 if (eth_skb_pad(skb))
1779 int pad_len = 60 - skb->len; 1779 return true;
1780
1781 if (skb_pad(skb, pad_len))
1782 return true;
1783 __skb_put(skb, pad_len);
1784 }
1785 1780
1786 return false; 1781 return false;
1787} 1782}
@@ -7334,12 +7329,8 @@ static netdev_tx_t __ixgbe_xmit_frame(struct sk_buff *skb,
7334 * The minimum packet size for olinfo paylen is 17 so pad the skb 7329 * The minimum packet size for olinfo paylen is 17 so pad the skb
7335 * in order to meet this minimum size requirement. 7330 * in order to meet this minimum size requirement.
7336 */ 7331 */
7337 if (unlikely(skb->len < 17)) { 7332 if (skb_put_padto(skb, 17))
7338 if (skb_pad(skb, 17 - skb->len)) 7333 return NETDEV_TX_OK;
7339 return NETDEV_TX_OK;
7340 skb->len = 17;
7341 skb_set_tail_pointer(skb, 17);
7342 }
7343 7334
7344 tx_ring = ring ? ring : adapter->tx_ring[skb->queue_mapping]; 7335 tx_ring = ring ? ring : adapter->tx_ring[skb->queue_mapping];
7345 7336