From 1f1f61707a0c02ebb6ddddd2ec25998bf1e8aae0 Mon Sep 17 00:00:00 2001 From: Jason Wang Date: Sun, 18 Sep 2011 23:48:31 +0000 Subject: [PATCH] --- yaml --- r: 266095 b: refs/heads/master c: 653fc9155769f8af8ea73e7e9c99dcaa5bd62086 h: refs/heads/master i: 266093: 90d00b305890090b785e6c871d1436836094fcfc 266091: 3fa78df2a17027bed9e506bd17209f294d4106e8 266087: fffc187fd926e44ad4de8d06d23ce7c87b76a505 266079: b712b779b9ec3b9bf320333b1fa638a96130d697 v: v3 --- [refs] | 2 +- trunk/drivers/net/macvtap.c | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index fef99d803af1..4ad20d6df6c7 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 59da45c4fe612cb4312bdf8e4f85fc295c73d50b +refs/heads/master: 653fc9155769f8af8ea73e7e9c99dcaa5bd62086 diff --git a/trunk/drivers/net/macvtap.c b/trunk/drivers/net/macvtap.c index 7c3f84acfdfb..3da557830937 100644 --- a/trunk/drivers/net/macvtap.c +++ b/trunk/drivers/net/macvtap.c @@ -453,7 +453,6 @@ static int zerocopy_sg_from_iovec(struct sk_buff *skb, const struct iovec *from, int copy = skb_headlen(skb); int size, offset1 = 0; int i = 0; - skb_frag_t *f; /* Skip over from offset */ while (count && (offset >= from->iov_len)) { @@ -503,14 +502,13 @@ 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) { - __skb_fill_page_desc( - skb, i, page[i], - base & ~PAGE_MASK, - min_t(int, len, PAGE_SIZE - f->page_offset)); + int off = base & ~PAGE_MASK; + int size = min_t(int, len, PAGE_SIZE - off); + __skb_fill_page_desc(skb, i, page[i], off, size); skb_shinfo(skb)->nr_frags++; /* increase sk_wmem_alloc */ - base += f->size; - len -= f->size; + base += size; + len -= size; i++; } offset1 = 0;