net: add skb frag size accessors
[pandora-kernel.git] / drivers / infiniband / hw / amso1100 / c2.c
index 444470a..5ce7b9e 100644 (file)
@@ -800,13 +800,10 @@ static int c2_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
        /* Loop thru additional data fragments and queue them */
        if (skb_shinfo(skb)->nr_frags) {
                for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) {
-                       skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
-                       maplen = frag->size;
-                       mapaddr =
-                           pci_map_page(c2dev->pcidev, frag->page,
-                                        frag->page_offset, maplen,
-                                        PCI_DMA_TODEVICE);
-
+                       const skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
+                       maplen = skb_frag_size(frag);
+                       mapaddr = skb_frag_dma_map(&c2dev->pcidev->dev, frag,
+                                                  0, maplen, DMA_TO_DEVICE);
                        elem = elem->next;
                        elem->skb = NULL;
                        elem->mapaddr = mapaddr;