* [PATCH 01/14] ibmveth: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
@ 2011-08-31 10:46 ` Ian Campbell
2011-08-31 10:46 ` [PATCH 02/14] jme: " Ian Campbell
` (13 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:46 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Santiago Leon
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Santiago Leon <santil@linux.vnet.ibm.com>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/ibm/ibmveth.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/ibm/ibmveth.c b/drivers/net/ethernet/ibm/ibmveth.c
index bba1ffc..8cca4a6 100644
--- a/drivers/net/ethernet/ibm/ibmveth.c
+++ b/drivers/net/ethernet/ibm/ibmveth.c
@@ -1002,9 +1002,8 @@ retry_bounce:
unsigned long dma_addr;
skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
- dma_addr = dma_map_page(&adapter->vdev->dev, frag->page,
- frag->page_offset, frag->size,
- DMA_TO_DEVICE);
+ dma_addr = skb_frag_dma_map(&adapter->vdev->dev, frag, 0,
+ frag->size, DMA_TO_DEVICE);
if (dma_mapping_error(&adapter->vdev->dev, dma_addr))
goto map_failed_frags;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 02/14] jme: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
2011-08-31 10:46 ` [PATCH 01/14] ibmveth: convert to SKB paged frag API Ian Campbell
@ 2011-08-31 10:46 ` Ian Campbell
2011-08-31 10:46 ` [PATCH 03/14] ksz884x: " Ian Campbell
` (12 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:46 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Guo-Fu Tseng
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Guo-Fu Tseng <cooldavid@cooldavid.org>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/jme.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/jme.c b/drivers/net/ethernet/jme.c
index a869ee4..48a0a23 100644
--- a/drivers/net/ethernet/jme.c
+++ b/drivers/net/ethernet/jme.c
@@ -1928,8 +1928,9 @@ jme_map_tx_skb(struct jme_adapter *jme, struct sk_buff *skb, int idx)
ctxdesc = txdesc + ((idx + i + 2) & (mask));
ctxbi = txbi + ((idx + i + 2) & (mask));
- jme_fill_tx_map(jme->pdev, ctxdesc, ctxbi, frag->page,
- frag->page_offset, frag->size, hidma);
+ jme_fill_tx_map(jme->pdev, ctxdesc, ctxbi,
+ skb_frag_page(frag),
+ frag->page_offset, frag->size, hidma);
}
len = skb_is_nonlinear(skb) ? skb_headlen(skb) : skb->len;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 03/14] ksz884x: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
2011-08-31 10:46 ` [PATCH 01/14] ibmveth: convert to SKB paged frag API Ian Campbell
2011-08-31 10:46 ` [PATCH 02/14] jme: " Ian Campbell
@ 2011-08-31 10:46 ` Ian Campbell
2011-08-31 10:46 ` [PATCH 04/14] macvtap: " Ian Campbell
` (11 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:46 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/micrel/ksz884x.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/micrel/ksz884x.c b/drivers/net/ethernet/micrel/ksz884x.c
index 27418d3..710c4ae 100644
--- a/drivers/net/ethernet/micrel/ksz884x.c
+++ b/drivers/net/ethernet/micrel/ksz884x.c
@@ -4704,8 +4704,7 @@ static void send_packet(struct sk_buff *skb, struct net_device *dev)
dma_buf->dma = pci_map_single(
hw_priv->pdev,
- page_address(this_frag->page) +
- this_frag->page_offset,
+ skb_frag_address(this_frag),
dma_buf->len,
PCI_DMA_TODEVICE);
set_tx_buf(desc, dma_buf->dma);
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 04/14] macvtap: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (2 preceding siblings ...)
2011-08-31 10:46 ` [PATCH 03/14] ksz884x: " Ian Campbell
@ 2011-08-31 10:46 ` Ian Campbell
2011-08-31 10:46 ` [PATCH 05/14] mv643xx: " Ian Campbell
` (10 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:46 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: netdev@vger.kernel.org
---
drivers/net/macvtap.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
index ab96c31..7c3f84a 100644
--- a/drivers/net/macvtap.c
+++ b/drivers/net/macvtap.c
@@ -503,10 +503,10 @@ static int zerocopy_sg_from_iovec(struct sk_buff *skb, const struct iovec *from,
skb->truesize += len;
atomic_add(len, &skb->sk->sk_wmem_alloc);
while (len) {
- f = &skb_shinfo(skb)->frags[i];
- f->page = page[i];
- f->page_offset = base & ~PAGE_MASK;
- f->size = min_t(int, len, PAGE_SIZE - f->page_offset);
+ __skb_fill_page_desc(
+ skb, i, page[i],
+ base & ~PAGE_MASK,
+ min_t(int, len, PAGE_SIZE - f->page_offset));
skb_shinfo(skb)->nr_frags++;
/* increase sk_wmem_alloc */
base += f->size;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 05/14] mv643xx: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (3 preceding siblings ...)
2011-08-31 10:46 ` [PATCH 04/14] macvtap: " Ian Campbell
@ 2011-08-31 10:46 ` Ian Campbell
2011-08-31 10:46 ` [PATCH 06/14] netxen: " Ian Campbell
` (9 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:46 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Lennert Buytenhek
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Lennert Buytenhek <buytenh@wantstofly.org>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/marvell/mv643xx_eth.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
index 1e2c9f07..7325737 100644
--- a/drivers/net/ethernet/marvell/mv643xx_eth.c
+++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
@@ -752,10 +752,10 @@ static void txq_submit_frag_skb(struct tx_queue *txq, struct sk_buff *skb)
desc->l4i_chk = 0;
desc->byte_cnt = this_frag->size;
- desc->buf_ptr = dma_map_page(mp->dev->dev.parent,
- this_frag->page,
- this_frag->page_offset,
- this_frag->size, DMA_TO_DEVICE);
+ desc->buf_ptr = skb_frag_dma_map(mp->dev->dev.parent,
+ this_frag, 0,
+ this_frag->size,
+ DMA_TO_DEVICE);
}
}
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 06/14] netxen: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (4 preceding siblings ...)
2011-08-31 10:46 ` [PATCH 05/14] mv643xx: " Ian Campbell
@ 2011-08-31 10:46 ` Ian Campbell
2011-08-31 10:46 ` [PATCH 07/14] niu: " Ian Campbell
` (8 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:46 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Sony Chacko, Rajesh Borundia
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Sony Chacko <sony.chacko@qlogic.com>
Cc: Rajesh Borundia <rajesh.borundia@qlogic.com>
Cc: netdev@vger.kernel.org
---
.../net/ethernet/qlogic/netxen/netxen_nic_main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c b/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c
index de18e47..694130e 100644
--- a/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c
+++ b/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c
@@ -1844,8 +1844,8 @@ netxen_map_tx_skb(struct pci_dev *pdev,
frag = &skb_shinfo(skb)->frags[i];
nf = &pbuf->frag_array[i+1];
- map = pci_map_page(pdev, frag->page, frag->page_offset,
- frag->size, PCI_DMA_TODEVICE);
+ map = skb_frag_dma_map(&pdev->dev, frag, 0, frag->size,
+ PCI_DMA_TODEVICE);
if (pci_dma_mapping_error(pdev, map))
goto unwind;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 07/14] niu: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (5 preceding siblings ...)
2011-08-31 10:46 ` [PATCH 06/14] netxen: " Ian Campbell
@ 2011-08-31 10:46 ` Ian Campbell
2011-08-31 10:47 ` [PATCH 08/14] ns83820: " Ian Campbell
` (7 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:46 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/sun/niu.c | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/sun/niu.c b/drivers/net/ethernet/sun/niu.c
index 3c9ef1c..cad58f2 100644
--- a/drivers/net/ethernet/sun/niu.c
+++ b/drivers/net/ethernet/sun/niu.c
@@ -3290,11 +3290,8 @@ static void niu_rx_skb_append(struct sk_buff *skb, struct page *page,
u32 offset, u32 size)
{
int i = skb_shinfo(skb)->nr_frags;
- skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
- frag->page = page;
- frag->page_offset = offset;
- frag->size = size;
+ __skb_fill_page_desc(skb, i, page, offset, size);
skb->len += size;
skb->data_len += size;
@@ -6737,7 +6734,7 @@ static netdev_tx_t niu_start_xmit(struct sk_buff *skb,
skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
len = frag->size;
- mapping = np->ops->map_page(np->device, frag->page,
+ mapping = np->ops->map_page(np->device, skb_frag_page(frag),
frag->page_offset, len,
DMA_TO_DEVICE);
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 08/14] ns83820: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (6 preceding siblings ...)
2011-08-31 10:46 ` [PATCH 07/14] niu: " Ian Campbell
@ 2011-08-31 10:47 ` Ian Campbell
2011-08-31 10:47 ` [PATCH 09/14] pasemi: " Ian Campbell
` (6 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:47 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/natsemi/ns83820.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/natsemi/ns83820.c b/drivers/net/ethernet/natsemi/ns83820.c
index 1a1e20e..e0895e4 100644
--- a/drivers/net/ethernet/natsemi/ns83820.c
+++ b/drivers/net/ethernet/natsemi/ns83820.c
@@ -1160,9 +1160,8 @@ again:
if (!nr_frags)
break;
- buf = pci_map_page(dev->pci_dev, frag->page,
- frag->page_offset,
- frag->size, PCI_DMA_TODEVICE);
+ buf = skb_frag_dma_map(&dev->pci_dev->dev, frag, 0,
+ frag->size, PCI_DMA_TODEVICE);
dprintk("frag: buf=%08Lx page=%08lx offset=%08lx\n",
(long long)buf, (long) page_to_pfn(frag->page),
frag->page_offset);
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 09/14] pasemi: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (7 preceding siblings ...)
2011-08-31 10:47 ` [PATCH 08/14] ns83820: " Ian Campbell
@ 2011-08-31 10:47 ` Ian Campbell
2011-08-31 10:47 ` [PATCH 10/14] qeth: " Ian Campbell
` (5 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:47 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Olof Johansson
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Olof Johansson <olof@lixom.net>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/pasemi/pasemi_mac.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/pasemi/pasemi_mac.c b/drivers/net/ethernet/pasemi/pasemi_mac.c
index fad620d..5322095 100644
--- a/drivers/net/ethernet/pasemi/pasemi_mac.c
+++ b/drivers/net/ethernet/pasemi/pasemi_mac.c
@@ -1505,9 +1505,8 @@ static int pasemi_mac_start_tx(struct sk_buff *skb, struct net_device *dev)
for (i = 0; i < nfrags; i++) {
skb_frag_t *frag = &skb_shinfo(skb)->frags[i];
- map[i+1] = pci_map_page(mac->dma_pdev, frag->page,
- frag->page_offset, frag->size,
- PCI_DMA_TODEVICE);
+ map[i + 1] = skb_frag_dma_map(&mac->dma_pdev->dev, frag, 0,
+ frag->size, PCI_DMA_TODEVICE);
map_size[i+1] = frag->size;
if (pci_dma_mapping_error(mac->dma_pdev, map[i+1])) {
nfrags = i;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 10/14] qeth: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (8 preceding siblings ...)
2011-08-31 10:47 ` [PATCH 09/14] pasemi: " Ian Campbell
@ 2011-08-31 10:47 ` Ian Campbell
2011-08-31 10:47 ` [PATCH 11/14] qla3xxx: " Ian Campbell
` (4 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:47 UTC (permalink / raw)
To: netdev
Cc: Ian Campbell, Ursula Braun, Frank Blaschka, linux390,
Martin Schwidefsky, Heiko Carstens, linux-s390
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Ursula Braun <ursula.braun@de.ibm.com>
Cc: Frank Blaschka <blaschka@linux.vnet.ibm.com>
Cc: linux390@de.ibm.com
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: linux-s390@vger.kernel.org
Cc: netdev@vger.kernel.org
---
drivers/s390/net/qeth_core_main.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/s390/net/qeth_core_main.c b/drivers/s390/net/qeth_core_main.c
index 97172f8..8153443 100644
--- a/drivers/s390/net/qeth_core_main.c
+++ b/drivers/s390/net/qeth_core_main.c
@@ -3694,7 +3694,8 @@ static inline void __qeth_fill_buffer(struct sk_buff *skb,
for (cnt = 0; cnt < skb_shinfo(skb)->nr_frags; cnt++) {
frag = &skb_shinfo(skb)->frags[cnt];
- buffer->element[element].addr = (char *)page_to_phys(frag->page)
+ buffer->element[element].addr = (char *)
+ page_to_phys(skb_frag_page(frag))
+ frag->page_offset;
buffer->element[element].length = frag->size;
buffer->element[element].eflags = SBAL_EFLAGS_MIDDLE_FRAG;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 11/14] qla3xxx: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (9 preceding siblings ...)
2011-08-31 10:47 ` [PATCH 10/14] qeth: " Ian Campbell
@ 2011-08-31 10:47 ` Ian Campbell
2011-08-31 10:47 ` [PATCH 12/14] qlcnic: " Ian Campbell
` (3 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:47 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Ron Mercer, linux-driver
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Ron Mercer <ron.mercer@qlogic.com>
Cc: linux-driver@qlogic.com
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/qlogic/qla3xxx.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/qla3xxx.c b/drivers/net/ethernet/qlogic/qla3xxx.c
index 8cab61c..1871d88 100644
--- a/drivers/net/ethernet/qlogic/qla3xxx.c
+++ b/drivers/net/ethernet/qlogic/qla3xxx.c
@@ -2388,9 +2388,8 @@ static int ql_send_map(struct ql3_adapter *qdev,
seg++;
}
- map = pci_map_page(qdev->pdev, frag->page,
- frag->page_offset, frag->size,
- PCI_DMA_TODEVICE);
+ map = skb_frag_dma_map(&qdev->pdev->dev, frag, 0, frag->size,
+ PCI_DMA_TODEVICE);
err = pci_dma_mapping_error(qdev->pdev, map);
if (err) {
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 12/14] qlcnic: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (10 preceding siblings ...)
2011-08-31 10:47 ` [PATCH 11/14] qla3xxx: " Ian Campbell
@ 2011-08-31 10:47 ` Ian Campbell
2011-08-31 10:47 ` [PATCH 13/14] qlge: " Ian Campbell
` (2 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:47 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Anirban Chakraborty, Sony Chacko, linux-driver
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
Cc: Sony Chacko <sony.chacko@qlogic.com>
Cc: linux-driver@qlogic.com
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
index 690c93f..501e16b 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
@@ -2135,8 +2135,8 @@ qlcnic_map_tx_skb(struct pci_dev *pdev,
frag = &skb_shinfo(skb)->frags[i];
nf = &pbuf->frag_array[i+1];
- map = pci_map_page(pdev, frag->page, frag->page_offset,
- frag->size, PCI_DMA_TODEVICE);
+ map = skb_frag_dma_map(&pdev->dev, frag, 0, frag->size,
+ PCI_DMA_TODEVICE);
if (pci_dma_mapping_error(pdev, map))
goto unwind;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 13/14] qlge: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (11 preceding siblings ...)
2011-08-31 10:47 ` [PATCH 12/14] qlcnic: " Ian Campbell
@ 2011-08-31 10:47 ` Ian Campbell
2011-08-31 10:47 ` [PATCH 14/14] r8169: " Ian Campbell
2011-09-15 19:41 ` [PATCH 0/14] skb fragment API: convert network drivers (part II) David Miller
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:47 UTC (permalink / raw)
To: netdev
Cc: Ian Campbell, Anirban Chakraborty, Jitendra Kalsaria, Ron Mercer,
linux-driver
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
---
drivers/net/ethernet/qlogic/qlge/qlge_main.c | 18 ++++++------------
1 files changed, 6 insertions(+), 12 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/qlge/qlge_main.c b/drivers/net/ethernet/qlogic/qlge/qlge_main.c
index 39360c4..ce6c6fe 100644
--- a/drivers/net/ethernet/qlogic/qlge/qlge_main.c
+++ b/drivers/net/ethernet/qlogic/qlge/qlge_main.c
@@ -1431,10 +1431,8 @@ static int ql_map_send(struct ql_adapter *qdev,
map_idx++;
}
- map =
- pci_map_page(qdev->pdev, frag->page,
- frag->page_offset, frag->size,
- PCI_DMA_TODEVICE);
+ map = skb_frag_dma_map(&qdev->pdev->dev, frag, 0, frag->size,
+ PCI_DMA_TODEVICE);
err = pci_dma_mapping_error(qdev->pdev, map);
if (err) {
@@ -1477,8 +1475,6 @@ static void ql_process_mac_rx_gro_page(struct ql_adapter *qdev,
{
struct sk_buff *skb;
struct bq_desc *lbq_desc = ql_get_curr_lchunk(qdev, rx_ring);
- struct skb_frag_struct *rx_frag;
- int nr_frags;
struct napi_struct *napi = &rx_ring->napi;
napi->dev = qdev->ndev;
@@ -1492,12 +1488,10 @@ static void ql_process_mac_rx_gro_page(struct ql_adapter *qdev,
return;
}
prefetch(lbq_desc->p.pg_chunk.va);
- rx_frag = skb_shinfo(skb)->frags;
- nr_frags = skb_shinfo(skb)->nr_frags;
- rx_frag += nr_frags;
- rx_frag->page = lbq_desc->p.pg_chunk.page;
- rx_frag->page_offset = lbq_desc->p.pg_chunk.offset;
- rx_frag->size = length;
+ __skb_fill_page_desc(skb, skb_shinfo(skb)->nr_frags,
+ lbq_desc->p.pg_chunk.page,
+ lbq_desc->p.pg_chunk.offset,
+ length);
skb->len += length;
skb->data_len += length;
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 14/14] r8169: convert to SKB paged frag API.
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (12 preceding siblings ...)
2011-08-31 10:47 ` [PATCH 13/14] qlge: " Ian Campbell
@ 2011-08-31 10:47 ` Ian Campbell
2011-09-15 19:41 ` [PATCH 0/14] skb fragment API: convert network drivers (part II) David Miller
14 siblings, 0 replies; 16+ messages in thread
From: Ian Campbell @ 2011-08-31 10:47 UTC (permalink / raw)
To: netdev; +Cc: Ian Campbell, Realtek linux nic maintainers, Francois Romieu
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Realtek linux nic maintainers <nic_swsd@realtek.com>
Cc: Francois Romieu <romieu@fr.zoreil.com>
Cc: netdev@vger.kernel.org
---
drivers/net/ethernet/realtek/r8169.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index 1cf8c3c..835bbb5 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -5027,7 +5027,7 @@ static int rtl8169_xmit_frags(struct rtl8169_private *tp, struct sk_buff *skb,
txd = tp->TxDescArray + entry;
len = frag->size;
- addr = ((void *) page_address(frag->page)) + frag->page_offset;
+ addr = skb_frag_address(frag);
mapping = dma_map_single(d, addr, len, DMA_TO_DEVICE);
if (unlikely(dma_mapping_error(d, mapping))) {
if (net_ratelimit())
--
1.7.2.5
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [PATCH 0/14] skb fragment API: convert network drivers (part II)
2011-08-31 10:46 [PATCH 0/14] skb fragment API: convert network drivers (part II) Ian Campbell
` (13 preceding siblings ...)
2011-08-31 10:47 ` [PATCH 14/14] r8169: " Ian Campbell
@ 2011-09-15 19:41 ` David Miller
14 siblings, 0 replies; 16+ messages in thread
From: David Miller @ 2011-09-15 19:41 UTC (permalink / raw)
To: Ian.Campbell; +Cc: netdev
From: Ian Campbell <Ian.Campbell@citrix.com>
Date: Wed, 31 Aug 2011 11:46:48 +0100
> The following series converts the second batch of network drivers to the
> SKB pages fragment API introduced in 131ea6675c76. I expect there will
> be ~4 similarly sized batches to convert all the drivers over.
>
> This is part of my series to enable visibility into SKB paged fragment's
> lifecycles, [0] contains some more background and rationale but
> basically the completed series will allow entities which inject pages
> into the networking stack to receive a notification when the stack has
> really finished with those pages (i.e. including retransmissions,
> clones, pull-ups etc) and not just when the original skb is finished
> with, which is beneficial to many subsystems which wish to inject pages
> into the network stack without giving up full ownership of those page's
> lifecycle. It implements something broadly along the lines of what was
> described in [1].
Series applied, thanks.
^ permalink raw reply [flat|nested] 16+ messages in thread