rpms/kernel/F-9 linux-2.6-net-add-debug-info-for-gso-bug.patch, NONE, 1.1.2.1 kernel.spec, 1.891.2.31, 1.891.2.32

Chuck Ebbert cebbert at fedoraproject.org
Fri Feb 27 07:27:54 UTC 2009


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv2300

Modified Files:
      Tag: private-fedora-9-2_6_27-branch
	kernel.spec 
Added Files:
      Tag: private-fedora-9-2_6_27-branch
	linux-2.6-net-add-debug-info-for-gso-bug.patch 
Log Message:
Add debug patch to try and track down #483532.

linux-2.6-net-add-debug-info-for-gso-bug.patch:

--- NEW FILE linux-2.6-net-add-debug-info-for-gso-bug.patch ---
From: Herbert Xu <herbert at gondor.apana.org.au>
Date: Tue, 20 Jan 2009 00:26:44 +0000 (-0800)
Subject: net: Add debug info to track down GSO checksum bug
X-Git-Tag: v2.6.29-rc3~23^2~58
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=67fd1a731ff1a990d4da7689909317756e50cb4d

net: Add debug info to track down GSO checksum bug

I'm trying to track down why people're hitting the checksum warning
in skb_gso_segment.  As the problem seems to be hitting lots of
people and I can't reproduce it or locate the bug, here is a patch
to print out more details which hopefully should help us to track
this down.

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/dev.c b/net/core/dev.c
index 8d67597..6e44c32 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -1534,7 +1534,19 @@ struct sk_buff *skb_gso_segment(struct sk_buff *skb, int features)
 	skb->mac_len = skb->network_header - skb->mac_header;
 	__skb_pull(skb, skb->mac_len);
 
-	if (WARN_ON(skb->ip_summed != CHECKSUM_PARTIAL)) {
+	if (unlikely(skb->ip_summed != CHECKSUM_PARTIAL)) {
+		struct net_device *dev = skb->dev;
+		struct ethtool_drvinfo info = {};
+
+		if (dev && dev->ethtool_ops && dev->ethtool_ops->get_drvinfo)
+			dev->ethtool_ops->get_drvinfo(dev, &info);
+
+		WARN(1, "%s: caps=(0x%lx, 0x%lx) len=%d data_len=%d "
+			"ip_summed=%d",
+		     info.driver, dev ? dev->features : 0L,
+		     skb->sk ? skb->sk->sk_route_caps : 0L,
+		     skb->len, skb->data_len, skb->ip_summed);
+
 		if (skb_header_cloned(skb) &&
 		    (err = pskb_expand_head(skb, 0, 0, GFP_ATOMIC)))
 			return ERR_PTR(err);


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-9/kernel.spec,v
retrieving revision 1.891.2.31
retrieving revision 1.891.2.32
diff -u -r1.891.2.31 -r1.891.2.32
--- kernel.spec	26 Feb 2009 20:07:13 -0000	1.891.2.31
+++ kernel.spec	27 Feb 2009 07:27:24 -0000	1.891.2.32
@@ -649,6 +649,7 @@
 Patch421: linux-2.6-squashfs.patch
 
 Patch430: linux-2.6-net-silence-noisy-printks.patch
+Patch431: linux-2.6-net-add-debug-info-for-gso-bug.patch
 
 Patch450: linux-2.6-input-kill-stupid-messages.patch
 Patch452: linux-2.6.27-hwmon-applesmc-2.6.28.patch
@@ -1233,6 +1234,8 @@
 # Networking
 # Disable easy to trigger printk's.
 ApplyPatch linux-2.6-net-silence-noisy-printks.patch
+# add debug stuff for hard-to-solve gso bug (#483532)
+ApplyPatch linux-2.6-net-add-debug-info-for-gso-bug.patch
 
 # Misc fixes
 # The input layer spews crap no-one cares about.
@@ -1952,6 +1955,9 @@
 %kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
 
 %changelog
+* Fri Feb 27 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.27.19-78.2.32
+- Add debug patch to try and track down #483532.
+
 * Thu Feb 26 2009 John W. Linville <linville at redhat.com> 2.6.27.19-78.2.31
 - Add dcbw's back-port patches to age scan results on resume (#466136)
 




More information about the fedora-extras-commits mailing list