2
0
forked from Ivasoft/openwrt

kernel: fix OCF for linux 3.2

Add skb_frag_page from 3.2 to OCF for 3.1 and earlier and use it.

SVN-Revision: 29818
This commit is contained in:
Jonas Gorski
2012-01-19 19:51:54 +00:00
parent 9fd3886365
commit aa8f9171f2
9 changed files with 20 additions and 11 deletions

View File

@@ -241,7 +241,7 @@ pci_map_skb(struct hifn_softc *sc,struct hifn_operand *buf,struct sk_buff *skb)
for (i = 0; i < skb_shinfo(skb)->nr_frags; ) {
buf->segs[buf->nsegs].ds_len = skb_shinfo(skb)->frags[i].size;
buf->segs[buf->nsegs].ds_addr = pci_map_single(sc->sc_pcidev,
page_address(skb_shinfo(skb)->frags[i].page) +
page_address(skb_frag_page(&skb_shinfo(skb)->frags[i])) +
skb_shinfo(skb)->frags[i].page_offset,
buf->segs[buf->nsegs].ds_len, PCI_DMA_BIDIRECTIONAL);
buf->mapsize += buf->segs[buf->nsegs].ds_len;