diff options
| author | Alexander Duyck <alexander.h.duyck@redhat.com> | 2014-12-03 11:17:39 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2014-12-08 20:47:42 -0500 |
| commit | a94d9e224e3c48f57559183582c6410e7acf1d8b (patch) | |
| tree | dce3ceb3bf34837c6cab7a13b3c0043fbe8eb720 /drivers/net/ethernet/intel/ixgbe | |
| parent | 9c0c112422a2a6b06fcddcaf21957676490cebba (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.c | 19 |
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 | ||
