[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090401092457.GB19847@gondor.apana.org.au>
Date: Wed, 1 Apr 2009 17:24:57 +0800
From: Herbert Xu <herbert@...dor.apana.org.au>
To: Jarek Poplawski <jarkao2@...il.com>
Cc: James Huang <jamesclhuang@...il.com>,
"David S. Miller" <davem@...emloft.net>, netdev@...r.kernel.org
Subject: Re: [PATCH] Re: skb_segment() questions
On Wed, Apr 01, 2009 at 09:18:01AM +0000, Jarek Poplawski wrote:
>
> gso: Fix support for linear packets 2
>
> The previous fix removed a check, which should be useful, only a bit
> later, by skipping at least two similar checks and three useless
> assignments in case a header is (still) copied.
>
> Signed-off-by: Jarek Poplawski <jarkao2@...il.com>
> ---
>
> net/core/skbuff.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/net/core/skbuff.c b/net/core/skbuff.c
> index ce6356c..2123a92 100644
> --- a/net/core/skbuff.c
> +++ b/net/core/skbuff.c
> @@ -2594,6 +2594,8 @@ struct sk_buff *skb_segment(struct sk_buff *skb, int features)
>
> skb_copy_from_linear_data_offset(skb, offset,
> skb_put(nskb, hsize), hsize);
> + if (pos >= offset + len)
> + continue;
>
> while (pos < offset + len && i < nfrags) {
> *frag = skb_shinfo(skb)->frags[i];
The common case (non-linear skb) is going to fail that check so
I'm no sure if it's warranted.
Thanks,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists