[kernel/f20] Add patch to fix warning in tcp_fastretrans_alert (rhbz 989251)

Josh Boyer jwboyer at fedoraproject.org
Tue Oct 22 14:27:06 UTC 2013


commit 6886a2133009cf7f67bfb04c8555ba3f85e9ce5e
Author: Josh Boyer <jwboyer at fedoraproject.org>
Date:   Tue Oct 22 10:24:30 2013 -0400

    Add patch to fix warning in tcp_fastretrans_alert (rhbz 989251)

 kernel.spec                                        |    9 ++
 ...fix-incorrect-ca_state-in-tail-loss-probe.patch |  107 ++++++++++++++++++++
 2 files changed, 116 insertions(+), 0 deletions(-)
---
diff --git a/kernel.spec b/kernel.spec
index be3c997..e1cf26b 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -792,6 +792,9 @@ Patch25132: rt2800usb-slow-down-TX-status-polling.patch
 #rhbz 1015558
 Patch25133: fix-buslogic.patch
 
+#rhbz 989251
+Patch25134: tcp-fix-incorrect-ca_state-in-tail-loss-probe.patch
+
 # END OF PATCH DEFINITIONS
 
 %endif
@@ -1542,6 +1545,9 @@ ApplyPatch rt2800usb-slow-down-TX-status-polling.patch
 #rhbz 1015558
 ApplyPatch fix-buslogic.patch
 
+#rhbz 989251
+ApplyPatch tcp-fix-incorrect-ca_state-in-tail-loss-probe.patch
+
 # END OF PATCH APPLICATIONS
 
 %endif
@@ -2344,6 +2350,9 @@ fi
 #                 ||----w |
 #                 ||     ||
 %changelog
+* Tue Oct 22 2013 Josh Boyer <jwboyer at fedoraproject.org>
+- Add patch to fix warning in tcp_fastretrans_alert (rhbz 989251)
+
 * Mon Oct 21 2013 Kyle McMartin <kyle at fedoraproject.org> - 3.11.6-301
 - Reduce scope of am335x-bone.patch, as it broke serial on Wandboard.
 
diff --git a/tcp-fix-incorrect-ca_state-in-tail-loss-probe.patch b/tcp-fix-incorrect-ca_state-in-tail-loss-probe.patch
new file mode 100644
index 0000000..1a1264f
--- /dev/null
+++ b/tcp-fix-incorrect-ca_state-in-tail-loss-probe.patch
@@ -0,0 +1,107 @@
+Path: news.gmane.org!not-for-mail
+From: Yuchung Cheng <ycheng at google.com>
+Newsgroups: gmane.linux.network
+Subject: [PATCH net] tcp: fix incorrect ca_state in tail loss probe
+Date: Sat, 12 Oct 2013 10:16:27 -0700
+Lines: 34
+Approved: news at gmane.org
+Message-ID: <1381598187-9681-1-git-send-email-ycheng at google.com>
+NNTP-Posting-Host: plane.gmane.org
+X-Trace: ger.gmane.org 1381598242 29686 80.91.229.3 (12 Oct 2013 17:17:22 GMT)
+X-Complaints-To: usenet at ger.gmane.org
+NNTP-Posting-Date: Sat, 12 Oct 2013 17:17:22 +0000 (UTC)
+Cc: netdev at vger.kernel.org, michael at sterretts.net,
+	jwboyer at fedoraproject.org, sesse at google.com, dormando at rydia.net,
+	Yuchung Cheng <ycheng at google.com>
+To: davem at davemloft.net, ncardwell at google.com, nanditad at google.com
+Original-X-From: netdev-owner at vger.kernel.org Sat Oct 12 19:17:23 2013
+Return-path: <netdev-owner at vger.kernel.org>
+Envelope-to: linux-netdev-2 at plane.gmane.org
+Original-Received: from vger.kernel.org ([209.132.180.67])
+	by plane.gmane.org with esmtp (Exim 4.69)
+	(envelope-from <netdev-owner at vger.kernel.org>)
+	id 1VV2od-0004tp-02
+	for linux-netdev-2 at plane.gmane.org; Sat, 12 Oct 2013 19:17:23 +0200
+Original-Received: (majordomo at vger.kernel.org) by vger.kernel.org via listexpand
+	id S1753183Ab3JLRRU (ORCPT <rfc822;linux-netdev-2 at m.gmane.org>);
+	Sat, 12 Oct 2013 13:17:20 -0400
+Original-Received: from mail-pb0-f74.google.com ([209.85.160.74]:35839 "EHLO
+	mail-pb0-f74.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
+	with ESMTP id S1752493Ab3JLRRS (ORCPT
+	<rfc822;netdev at vger.kernel.org>); Sat, 12 Oct 2013 13:17:18 -0400
+Original-Received: by mail-pb0-f74.google.com with SMTP id rq2so543459pbb.1
+        for <netdev at vger.kernel.org>; Sat, 12 Oct 2013 10:17:18 -0700 (PDT)
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
+        d=google.com; s=20120113;
+        h=from:to:cc:subject:date:message-id;
+        bh=YSBIMZEgVuqyP2cau1199a1sz5d28JA7LPPsF6w9FYQ=;
+        b=cCkXgePT7f0kRy+VBGvs3DZSLhVn0z7O74B7OHYpdZkQBznhNZ2b6ZGbkDqaKJXyLT
+         GEsq/JXCgtwpC7aGSz9dPdAZU6kondKOAmfhh54u6f2+ymcZJ4zHpoA6mWuKJ4zlTF2w
+         6tRhnT+/N5RkfIfYD/mcDx97X41kRT3NKJ6bsCoiNJIO2+6j8SrOi8C27InOkdIRY/AT
+         I1uu2bvai1CfrC5yQ6UfpKUg2jioFDOi7i5nSEon+JnWeJavHpO01JMHuar7ZeGnAKJg
+         kVLwyiRujU9Fz0CKIMPZihAngQu/0OgqORQIjygeqz+GPgtTxDGQP7IUNR/d+JOPVUse
+         XlSA==
+X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
+        d=1e100.net; s=20130820;
+        h=x-gm-message-state:from:to:cc:subject:date:message-id;
+        bh=YSBIMZEgVuqyP2cau1199a1sz5d28JA7LPPsF6w9FYQ=;
+        b=d95i7RXY0ff5vnWvrGqxWfSvvAE8SC6YAaBn3ZqbARIZm5GgynIAB/WYnrIOqpqGV6
+         56jVM40bfzLrols1UZzyJWqPIgxee1zPrESh+WrSsDP2tTdYKl/zk13lbt/u7nOn9o3u
+         HrAo2aY4DtV3P0ABEq1lKdazmmPACTc6256QQ2nxtHs5n7s7P1ERkpX7NGNqNf1zDBSv
+         60xeoswRpMkh0G5ZUgpPYsIbXws9F64n5ytq34O2UDZPv5oPEd8I7P34HpqWkNsLoEBs
+         XXTxs1SLc8TI3vdduhaQ+rmEvcE5vTaqjVCQAT2mMKTJJ9xIFueF5zExfI892PHAcJQ8
+         jiaw==
+X-Gm-Message-State: ALoCoQkeL+3MY64KlpZKI1BuYMU+yTQcYF1C+U5u+kPpqROoekUMzIaH45qERBARAi/0vgJ5YM1Cwm+43d66vZMn/WdHPurbMHfFn3PYqeZSAzOEeuSA2jGTSZUkpuH8YwFqiNhABtj93ahsBXrA6POrXb531UvuahU+rnFLTGNLxVHv/08PW3l5PbN8UaTNpUI1qcf6O6MarFcB+fZLYPb339v4EIrLxg==
+X-Received: by 10.66.5.226 with SMTP id v2mr8825633pav.22.1381598238410;
+        Sat, 12 Oct 2013 10:17:18 -0700 (PDT)
+Original-Received: from corp2gmr1-2.hot.corp.google.com (corp2gmr1-2.hot.corp.google.com [172.24.189.93])
+        by gmr-mx.google.com with ESMTPS id a24si3247317yhl.1.1969.12.31.16.00.00
+        (version=TLSv1.1 cipher=AES128-SHA bits=128/128);
+        Sat, 12 Oct 2013 10:17:18 -0700 (PDT)
+Original-Received: from blast2.mtv.corp.google.com (blast2.mtv.corp.google.com [172.17.132.164])
+	by corp2gmr1-2.hot.corp.google.com (Postfix) with ESMTP id 2F2B45A41A0;
+	Sat, 12 Oct 2013 10:17:18 -0700 (PDT)
+Original-Received: by blast2.mtv.corp.google.com (Postfix, from userid 5463)
+	id C6A85220C26; Sat, 12 Oct 2013 10:17:17 -0700 (PDT)
+X-Mailer: git-send-email 1.8.4
+Original-Sender: netdev-owner at vger.kernel.org
+Precedence: bulk
+List-ID: <netdev.vger.kernel.org>
+X-Mailing-List: netdev at vger.kernel.org
+Xref: news.gmane.org gmane.linux.network:286793
+Archived-At: <http://permalink.gmane.org/gmane.linux.network/286793>
+
+On receiving an ACK that covers the loss probe sequence, TLP
+immediately sets the congestion state to Open, even though some packets
+are not recovered and retransmisssion are on the way.  The later ACks
+may trigger a WARN_ON check in step D of tcp_fastretrans_alert(), e.g.,
+https://bugzilla.redhat.com/show_bug.cgi?id=989251
+
+The fix is to follow the similar procedure in recovery by calling
+tcp_try_keep_open(). The sender switches to Open state if no packets
+are retransmissted. Otherwise it goes to Disorder and let subsequent
+ACKs move the state to Recovery or Open.
+
+Reported-By: Michael Sterrett <michael at sterretts.net>
+Tested-By: Dormando <dormando at rydia.net>
+Signed-off-by: Yuchung Cheng <ycheng at google.com>
+---
+ net/ipv4/tcp_input.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
+index 113dc5f..53974c7 100644
+--- a/net/ipv4/tcp_input.c
++++ b/net/ipv4/tcp_input.c
+@@ -3291,7 +3291,7 @@ static void tcp_process_tlp_ack(struct sock *sk, u32 ack, int flag)
+ 			tcp_init_cwnd_reduction(sk, true);
+ 			tcp_set_ca_state(sk, TCP_CA_CWR);
+ 			tcp_end_cwnd_reduction(sk);
+-			tcp_set_ca_state(sk, TCP_CA_Open);
++			tcp_try_keep_open(sk);
+ 			NET_INC_STATS_BH(sock_net(sk),
+ 					 LINUX_MIB_TCPLOSSPROBERECOVERY);
+ 		}
+-- 
+1.8.4
+


More information about the scm-commits mailing list