rpms/kernel/devel linux-2.6-net-fix-another-gro-bug.patch, NONE, 1.1 TODO, 1.59, 1.60 kernel.spec, 1.1482, 1.1483

Mark McLoughlin markmc at fedoraproject.org
Mon Mar 30 08:56:40 UTC 2009


Author: markmc

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv12359

Modified Files:
	TODO kernel.spec 
Added Files:
	linux-2.6-net-fix-another-gro-bug.patch 
Log Message:
* Mon Mar 30 2009 Mark McLoughlin <markmc at redhat.com> 2.6.29-21
- Fix guest->remote network stall with virtio/GSO (#490266)


linux-2.6-net-fix-another-gro-bug.patch:

--- NEW FILE linux-2.6-net-fix-another-gro-bug.patch ---
From: Herbert Xu <herbert at gondor.apana.org.au>
Date: Sun, 29 Mar 2009 06:39:18 +0000 (-0700)
Subject: gso: Fix support for linear packets
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fdavem%2Fnet-2.6.git;a=commitdiff_plain;h=2f181855a0b3c2b39314944add7b41c15647cf86

gso: Fix support for linear packets

When GRO/frag_list support was added to GSO, I made an error
which broke the support for segmenting linear GSO packets (GSO
packets are normally non-linear in the payload).

These days most of these packets are constructed by the tun
driver, which prefers to allocate linear memory if possible.
This is fixed in the latest kernel, but for 2.6.29 and earlier
it is still the norm.

Therefore this bug causes failures with GSO when used with tun
in 2.6.29.

Reported-by: James Huang <jamesclhuang at gmail.com>
Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
Signed-off-by: David S. Miller <davem at davemloft.net>
---

diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 6acbf9e..ce6356c 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -2579,7 +2579,7 @@ struct sk_buff *skb_segment(struct sk_buff *skb, int features)
 					  skb_network_header_len(skb));
 		skb_copy_from_linear_data(skb, nskb->data, doffset);
 
-		if (pos >= offset + len)
+		if (fskb != skb_shinfo(skb)->frag_list)
 			continue;
 
 		if (!sg) {


Index: TODO
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/TODO,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- TODO	23 Mar 2009 14:32:05 -0000	1.59
+++ TODO	30 Mar 2009 08:56:09 -0000	1.60
@@ -91,3 +91,8 @@
         In jbarnes linux-next tree for 2.6.30
         Need for KVM PCI device assignment
         https://bugzilla.redhat.com/487103
+
+* linux-2.6-net-fix-another-gro-bug.patch:
+        virtio_net guest->remote GSO busted with 2.6.29 host
+        https://bugzilla.redhat.com/490266
+        Should be in 2.6.29.1


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1482
retrieving revision 1.1483
diff -u -r1.1482 -r1.1483
--- kernel.spec	30 Mar 2009 06:32:14 -0000	1.1482
+++ kernel.spec	30 Mar 2009 08:56:10 -0000	1.1483
@@ -696,9 +696,10 @@
 
 # fix for net lockups, will be in 2.6.29.1
 Patch9100: linux-2.6-net-fix-gro-bug.patch
+Patch9101: linux-2.6-net-fix-another-gro-bug.patch
 
 # fix locking in ipsec (#489764)
-Patch9101: linux-2.6-net-xfrm-fix-spin-unlock.patch
+Patch9200: linux-2.6-net-xfrm-fix-spin-unlock.patch
 
 %endif
 
@@ -1256,6 +1257,8 @@
 ApplyPatch linux-2.6-dropwatch-protocol.patch
 
 ApplyPatch linux-2.6-net-fix-gro-bug.patch
+ApplyPatch linux-2.6-net-fix-another-gro-bug.patch
+
 ApplyPatch linux-2.6-net-xfrm-fix-spin-unlock.patch
 
 # END OF PATCH APPLICATIONS
@@ -1841,6 +1844,9 @@
 # and build.
 
 %changelog
+* Mon Mar 30 2009 Mark McLoughlin <markmc at redhat.com> 2.6.29-21
+- Fix guest->remote network stall with virtio/GSO (#490266)
+
 * Mon Mar 30 2009 Ben Skeggs <bskeggs at redhat.com>
 - drm-nouveau.patch
   - rewrite nouveau PCI(E) GART functions, should fix rh#492492




More information about the fedora-extras-commits mailing list