diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2011-10-18 17:00:24 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-10-19 03:10:46 -0400 |
commit | 9e903e085262ffbf1fc44a17ac06058aca03524a (patch) | |
tree | 4acefc97ba38c1733474d25c0b2053b56af97db1 /drivers/net/ethernet/broadcom/bnx2.c | |
parent | dd767856a36e00b631d65ebc4bb81b19915532d6 (diff) |
net: add skb frag size accessors
To ease skb->truesize sanitization, its better to be able to localize
all references to skb frags size.
Define accessors : skb_frag_size() to fetch frag size, and
skb_frag_size_{set|add|sub}() to manipulate it.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnx2.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2.c b/drivers/net/ethernet/broadcom/bnx2.c index 6ff7636e73a2..965c7235804d 100644 --- a/drivers/net/ethernet/broadcom/bnx2.c +++ b/drivers/net/ethernet/broadcom/bnx2.c | |||
@@ -2871,7 +2871,7 @@ bnx2_tx_int(struct bnx2 *bp, struct bnx2_napi *bnapi, int budget) | |||
2871 | dma_unmap_addr( | 2871 | dma_unmap_addr( |
2872 | &txr->tx_buf_ring[TX_RING_IDX(sw_cons)], | 2872 | &txr->tx_buf_ring[TX_RING_IDX(sw_cons)], |
2873 | mapping), | 2873 | mapping), |
2874 | skb_shinfo(skb)->frags[i].size, | 2874 | skb_frag_size(&skb_shinfo(skb)->frags[i]), |
2875 | PCI_DMA_TODEVICE); | 2875 | PCI_DMA_TODEVICE); |
2876 | } | 2876 | } |
2877 | 2877 | ||
@@ -3049,7 +3049,7 @@ bnx2_rx_skb(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, struct sk_buff *skb, | |||
3049 | } else { | 3049 | } else { |
3050 | skb_frag_t *frag = | 3050 | skb_frag_t *frag = |
3051 | &skb_shinfo(skb)->frags[i - 1]; | 3051 | &skb_shinfo(skb)->frags[i - 1]; |
3052 | frag->size -= tail; | 3052 | skb_frag_size_sub(frag, tail); |
3053 | skb->data_len -= tail; | 3053 | skb->data_len -= tail; |
3054 | } | 3054 | } |
3055 | return 0; | 3055 | return 0; |
@@ -5395,7 +5395,7 @@ bnx2_free_tx_skbs(struct bnx2 *bp) | |||
5395 | tx_buf = &txr->tx_buf_ring[TX_RING_IDX(j)]; | 5395 | tx_buf = &txr->tx_buf_ring[TX_RING_IDX(j)]; |
5396 | dma_unmap_page(&bp->pdev->dev, | 5396 | dma_unmap_page(&bp->pdev->dev, |
5397 | dma_unmap_addr(tx_buf, mapping), | 5397 | dma_unmap_addr(tx_buf, mapping), |
5398 | skb_shinfo(skb)->frags[k].size, | 5398 | skb_frag_size(&skb_shinfo(skb)->frags[k]), |
5399 | PCI_DMA_TODEVICE); | 5399 | PCI_DMA_TODEVICE); |
5400 | } | 5400 | } |
5401 | dev_kfree_skb(skb); | 5401 | dev_kfree_skb(skb); |
@@ -6530,13 +6530,13 @@ bnx2_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
6530 | tx_buf->is_gso = skb_is_gso(skb); | 6530 | tx_buf->is_gso = skb_is_gso(skb); |
6531 | 6531 | ||
6532 | for (i = 0; i < last_frag; i++) { | 6532 | for (i = 0; i < last_frag; i++) { |
6533 | skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; | 6533 | const skb_frag_t *frag = &skb_shinfo(skb)->frags[i]; |
6534 | 6534 | ||
6535 | prod = NEXT_TX_BD(prod); | 6535 | prod = NEXT_TX_BD(prod); |
6536 | ring_prod = TX_RING_IDX(prod); | 6536 | ring_prod = TX_RING_IDX(prod); |
6537 | txbd = &txr->tx_desc_ring[ring_prod]; | 6537 | txbd = &txr->tx_desc_ring[ring_prod]; |
6538 | 6538 | ||
6539 | len = frag->size; | 6539 | len = skb_frag_size(frag); |
6540 | mapping = skb_frag_dma_map(&bp->pdev->dev, frag, 0, len, | 6540 | mapping = skb_frag_dma_map(&bp->pdev->dev, frag, 0, len, |
6541 | DMA_TO_DEVICE); | 6541 | DMA_TO_DEVICE); |
6542 | if (dma_mapping_error(&bp->pdev->dev, mapping)) | 6542 | if (dma_mapping_error(&bp->pdev->dev, mapping)) |
@@ -6594,7 +6594,7 @@ dma_error: | |||
6594 | ring_prod = TX_RING_IDX(prod); | 6594 | ring_prod = TX_RING_IDX(prod); |
6595 | tx_buf = &txr->tx_buf_ring[ring_prod]; | 6595 | tx_buf = &txr->tx_buf_ring[ring_prod]; |
6596 | dma_unmap_page(&bp->pdev->dev, dma_unmap_addr(tx_buf, mapping), | 6596 | dma_unmap_page(&bp->pdev->dev, dma_unmap_addr(tx_buf, mapping), |
6597 | skb_shinfo(skb)->frags[i].size, | 6597 | skb_frag_size(&skb_shinfo(skb)->frags[i]), |
6598 | PCI_DMA_TODEVICE); | 6598 | PCI_DMA_TODEVICE); |
6599 | } | 6599 | } |
6600 | 6600 | ||