net: add skb frag size accessors
[pandora-kernel.git] / drivers / net / ethernet / broadcom / bnx2.c
index 6ff7636..965c723 100644 (file)
@@ -2871,7 +2871,7 @@ bnx2_tx_int(struct bnx2 *bp, struct bnx2_napi *bnapi, int budget)
                                dma_unmap_addr(
                                        &txr->tx_buf_ring[TX_RING_IDX(sw_cons)],
                                        mapping),
-                               skb_shinfo(skb)->frags[i].size,
+                               skb_frag_size(&skb_shinfo(skb)->frags[i]),
                                PCI_DMA_TODEVICE);
                }
 
@@ -3049,7 +3049,7 @@ bnx2_rx_skb(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, struct sk_buff *skb,
                                } else {
                                        skb_frag_t *frag =
                                                &skb_shinfo(skb)->frags[i - 1];
-                                       frag->size -= tail;
+                                       skb_frag_size_sub(frag, tail);
                                        skb->data_len -= tail;
                                }
                                return 0;
@@ -5395,7 +5395,7 @@ bnx2_free_tx_skbs(struct bnx2 *bp)
                                tx_buf = &txr->tx_buf_ring[TX_RING_IDX(j)];
                                dma_unmap_page(&bp->pdev->dev,
                                        dma_unmap_addr(tx_buf, mapping),
-                                       skb_shinfo(skb)->frags[k].size,
+                                       skb_frag_size(&skb_shinfo(skb)->frags[k]),
                                        PCI_DMA_TODEVICE);
                        }
                        dev_kfree_skb(skb);
@@ -6530,13 +6530,13 @@ bnx2_start_xmit(struct sk_buff *skb, struct net_device *dev)
        tx_buf->is_gso = skb_is_gso(skb);
 
        for (i = 0; i < last_frag; i++) {
-               skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
+               const skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
 
                prod = NEXT_TX_BD(prod);
                ring_prod = TX_RING_IDX(prod);
                txbd = &txr->tx_desc_ring[ring_prod];
 
-               len = frag->size;
+               len = skb_frag_size(frag);
                mapping = skb_frag_dma_map(&bp->pdev->dev, frag, 0, len,
                                           DMA_TO_DEVICE);
                if (dma_mapping_error(&bp->pdev->dev, mapping))
@@ -6594,7 +6594,7 @@ dma_error:
                ring_prod = TX_RING_IDX(prod);
                tx_buf = &txr->tx_buf_ring[ring_prod];
                dma_unmap_page(&bp->pdev->dev, dma_unmap_addr(tx_buf, mapping),
-                              skb_shinfo(skb)->frags[i].size,
+                              skb_frag_size(&skb_shinfo(skb)->frags[i]),
                               PCI_DMA_TODEVICE);
        }