Displaying 3 results from an estimated 3 matches for "max_buffer_offset".
2013 Jul 10
13
[PATCH v2 1/1] xen/netback: correctly calculate required slots of skb.
...ad)
{
- unsigned int count;
- int i, copy_off;
+ unsigned long bytes;
+ int count = 0;
- count = DIV_ROUND_UP(skb_headlen(skb), PAGE_SIZE);
+ offset &= ~PAGE_MASK;
- copy_off = skb_headlen(skb) % PAGE_SIZE;
+ while (size > 0) {
+ BUG_ON(offset >= PAGE_SIZE);
+ BUG_ON(*copy_off > MAX_BUFFER_OFFSET);
- if (skb_shinfo(skb)->gso_size)
- count++;
+ bytes = PAGE_SIZE - offset;
- for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) {
- unsigned long size = skb_frag_size(&skb_shinfo(skb)->frags[i]);
- unsigned long offset = skb_shinfo(skb)->frags[i].page_offset;
- unsigned lo...
2013 Jul 09
20
[PATCH 1/1] xen/netback: correctly calculate required slots of skb.
...(page));
- copy_off = skb_headlen(skb) % PAGE_SIZE;
+ /* Skip unused frames from start of page */
+ page += offset >> PAGE_SHIFT;
+ offset &= ~PAGE_MASK;
- if (skb_shinfo(skb)->gso_size)
- count++;
+ while (size > 0) {
+ BUG_ON(offset >= PAGE_SIZE);
+ BUG_ON(*copy_off > MAX_BUFFER_OFFSET);
- for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) {
- unsigned long size = skb_frag_size(&skb_shinfo(skb)->frags[i]);
- unsigned long offset = skb_shinfo(skb)->frags[i].page_offset;
- unsigned long bytes;
+ bytes = PAGE_SIZE - offset;
- offset &= ~PAGE_MASK;
+ if (by...
2012 Jan 26
1
[PATCH] netback: fix multi page ring size calculation.
...4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/xen-netback/common.h b/drivers/net/xen-netback/common.h
index 477e5ab..f3d95b3 100644
--- a/drivers/net/xen-netback/common.h
+++ b/drivers/net/xen-netback/common.h
@@ -60,9 +60,9 @@ struct xenvif_rx_meta {
#define MAX_BUFFER_OFFSET PAGE_SIZE
#define NETBK_TX_RING_SIZE(_nr_pages) \
- (__CONST_RING_SIZE(xen_netif_tx, PAGE_SIZE) * (_nr_pages))
+ (__CONST_RING_SIZE(xen_netif_tx, PAGE_SIZE * (_nr_pages)))
#define NETBK_RX_RING_SIZE(_nr_pages) \
- (__CONST_RING_SIZE(xen_netif_rx, PAGE_SIZE) * (_nr_pages))
+ (__CONST_RIN...