Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

qlge: convert to SKB paged frag API.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
Cc: Jitendra Kalsaria <jitendra.kalsaria@qlogic.com>
Cc: Ron Mercer <ron.mercer@qlogic.com>
Cc: linux-driver@qlogic.com
Cc: netdev@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Ian Campbell and committed by
David S. Miller
da7ebfd7 e0ee9b98

+6 -12
+6 -12
drivers/net/ethernet/qlogic/qlge/qlge_main.c
··· 1431 1431 map_idx++; 1432 1432 } 1433 1433 1434 - map = 1435 - pci_map_page(qdev->pdev, frag->page, 1436 - frag->page_offset, frag->size, 1437 - PCI_DMA_TODEVICE); 1434 + map = skb_frag_dma_map(&qdev->pdev->dev, frag, 0, frag->size, 1435 + PCI_DMA_TODEVICE); 1438 1436 1439 1437 err = pci_dma_mapping_error(qdev->pdev, map); 1440 1438 if (err) { ··· 1475 1477 { 1476 1478 struct sk_buff *skb; 1477 1479 struct bq_desc *lbq_desc = ql_get_curr_lchunk(qdev, rx_ring); 1478 - struct skb_frag_struct *rx_frag; 1479 - int nr_frags; 1480 1480 struct napi_struct *napi = &rx_ring->napi; 1481 1481 1482 1482 napi->dev = qdev->ndev; ··· 1488 1492 return; 1489 1493 } 1490 1494 prefetch(lbq_desc->p.pg_chunk.va); 1491 - rx_frag = skb_shinfo(skb)->frags; 1492 - nr_frags = skb_shinfo(skb)->nr_frags; 1493 - rx_frag += nr_frags; 1494 - rx_frag->page = lbq_desc->p.pg_chunk.page; 1495 - rx_frag->page_offset = lbq_desc->p.pg_chunk.offset; 1496 - rx_frag->size = length; 1495 + __skb_fill_page_desc(skb, skb_shinfo(skb)->nr_frags, 1496 + lbq_desc->p.pg_chunk.page, 1497 + lbq_desc->p.pg_chunk.offset, 1498 + length); 1497 1499 1498 1500 skb->len += length; 1499 1501 skb->data_len += length;