diff options
author | Ian Campbell <Ian.Campbell@citrix.com> | 2011-08-30 20:46:56 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-09-15 15:34:59 -0400 |
commit | d1b08284ade773eb6aae680de03132eec618f2cd (patch) | |
tree | 5f8f536f6121119fe7cdc7dbdbb586e647c8de85 /drivers/net/macvtap.c | |
parent | 787343ad3d321fc987e36715433050df88353465 (diff) |
macvtap: convert to SKB paged frag API.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: netdev@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/macvtap.c')
-rw-r--r-- | 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 ab96c319a240..7c3f84acfdfb 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, | |||
503 | skb->truesize += len; | 503 | skb->truesize += len; |
504 | atomic_add(len, &skb->sk->sk_wmem_alloc); | 504 | atomic_add(len, &skb->sk->sk_wmem_alloc); |
505 | while (len) { | 505 | while (len) { |
506 | f = &skb_shinfo(skb)->frags[i]; | 506 | __skb_fill_page_desc( |
507 | f->page = page[i]; | 507 | skb, i, page[i], |
508 | f->page_offset = base & ~PAGE_MASK; | 508 | base & ~PAGE_MASK, |
509 | f->size = min_t(int, len, PAGE_SIZE - f->page_offset); | 509 | min_t(int, len, PAGE_SIZE - f->page_offset)); |
510 | skb_shinfo(skb)->nr_frags++; | 510 | skb_shinfo(skb)->nr_frags++; |
511 | /* increase sk_wmem_alloc */ | 511 | /* increase sk_wmem_alloc */ |
512 | base += f->size; | 512 | base += f->size; |