All of lore.kernel.org
 help / color / mirror / Atom feed
* another GSO bug fix backport?
@ 2006-12-15  7:58 Jan Beulich
  2006-12-15  9:03 ` Herbert Xu
  0 siblings, 1 reply; 2+ messages in thread
From: Jan Beulich @ 2006-12-15  7:58 UTC (permalink / raw)
  To: Herbert Xu, xen-devel

Wouldn't it be good to add below patch to the set of Xen's GSO backports?

Jan

[NET]: Fix segmentation of linear packets

skb_segment fails to segment linear packets correctly because it
tries to write all linear parts of the original skb into each
segment.  This will always panic as each segment only contains
enough space for one MSS.

This was not detected earlier because linear packets should be
rare for GSO.  In fact it still remains to be seen what exactly
created the linear packets that triggered this bug.  Basically
the only time this should happen is if someone enables GSO
emulation on an interface that does not support SG.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

GIT: c8884edd078748905552d667857259e5358e1232

diff -Naru a/net/core/skbuff.c b/net/core/skbuff.c
--- a/net/core/skbuff.c	2006-12-14 09:32:04 -08:00
+++ b/net/core/skbuff.c	2006-12-14 09:32:04 -08:00
@@ -1946,7 +1946,7 @@
 	do {
 		struct sk_buff *nskb;
 		skb_frag_t *frag;
-		int hsize, nsize;
+		int hsize;
 		int k;
 		int size;
 
@@ -1957,11 +1957,10 @@
 		hsize = skb_headlen(skb) - offset;
 		if (hsize < 0)
 			hsize = 0;
-		nsize = hsize + doffset;
-		if (nsize > len + doffset || !sg)
-			nsize = len + doffset;
+		if (hsize > len || !sg)
+			hsize = len;
 
-		nskb = alloc_skb(nsize + headroom, GFP_ATOMIC);
+		nskb = alloc_skb(hsize + doffset + headroom, GFP_ATOMIC);
 		if (unlikely(!nskb))
 			goto err;

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: another GSO bug fix backport?
  2006-12-15  7:58 another GSO bug fix backport? Jan Beulich
@ 2006-12-15  9:03 ` Herbert Xu
  0 siblings, 0 replies; 2+ messages in thread
From: Herbert Xu @ 2006-12-15  9:03 UTC (permalink / raw)
  To: Jan Beulich; +Cc: xen-devel

On Fri, Dec 15, 2006 at 07:58:45AM +0000, Jan Beulich wrote:
> Wouldn't it be good to add below patch to the set of Xen's GSO backports?

Yes I agree.  Although it would also be good to update the Xen
kernel one of these days :)

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-12-15  9:03 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-15  7:58 another GSO bug fix backport? Jan Beulich
2006-12-15  9:03 ` Herbert Xu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.