From 2e0072db4119ee1a43871171c220be0cb221e4ab Mon Sep 17 00:00:00 2001 From: Michal Schmidt Date: Mon, 24 Jan 2011 12:08:48 +0000 Subject: [PATCH] --- yaml --- r: 232450 b: refs/heads/master c: d1dc7abf2fafa34b0ffcd070fd59405aa9c0a4d8 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/core/skbuff.c | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index bd74b80669c9..fef32e8a1d88 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e92427b289d252cfbd4cb5282d92f4ce1a5bb1fb +refs/heads/master: d1dc7abf2fafa34b0ffcd070fd59405aa9c0a4d8 diff --git a/trunk/net/core/skbuff.c b/trunk/net/core/skbuff.c index d31bb36ae0dc..7cd1bc86d591 100644 --- a/trunk/net/core/skbuff.c +++ b/trunk/net/core/skbuff.c @@ -2744,8 +2744,12 @@ int skb_gro_receive(struct sk_buff **head, struct sk_buff *skb) merge: if (offset > headlen) { - skbinfo->frags[0].page_offset += offset - headlen; - skbinfo->frags[0].size -= offset - headlen; + unsigned int eat = offset - headlen; + + skbinfo->frags[0].page_offset += eat; + skbinfo->frags[0].size -= eat; + skb->data_len -= eat; + skb->len -= eat; offset = headlen; }