From 468f311870f5358e65cbee3d5e9cf8c41c76e243 Mon Sep 17 00:00:00 2001 From: Chris Wright Date: Wed, 5 Oct 2005 14:31:10 -0700 Subject: [PATCH] Add tcp BIC fix fwd from DaveM. --- queue/series | 1 + queue/tcp-congestion-control-bug.patch | 39 ++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 queue/tcp-congestion-control-bug.patch diff --git a/queue/series b/queue/series index 1f422a055c3..d52b4c4bf43 100644 --- a/queue/series +++ b/queue/series @@ -1,2 +1,3 @@ ieee1394-sbp2-fixes-for-hot-unplug-and-module-unloading.patch orinoco-info-leak.patch +tcp-congestion-control-bug.patch diff --git a/queue/tcp-congestion-control-bug.patch b/queue/tcp-congestion-control-bug.patch new file mode 100644 index 00000000000..787eea6966e --- /dev/null +++ b/queue/tcp-congestion-control-bug.patch @@ -0,0 +1,39 @@ +From stable-bounces@linux.kernel.org Wed Oct 5 12:10:57 2005 +Date: Wed, 05 Oct 2005 12:10:43 -0700 (PDT) +To: stable@kernel.org +From: "David S. Miller" +Cc: +Subject: [TCP]: BIC coding bug in Linux 2.6.13 + +From: Stephen Hemminger + +Please consider this change for 2.6.13-stable Since BIC is +the default congestion control algorithm, this fix is quite +important. + +Missing parenthesis in causes BIC to be slow in increasing congestion +window. + +Spotted by Injong Rhee. + +Signed-off-by: Stephen Hemminger +Signed-off-by: David S. Miller +Signed-off-by: Chris Wright +--- + + net/ipv4/tcp_bic.c | 2 +- + 1 files changed, 1 insertion(+), 1 deletion(-) + +Index: linux-2.6.13.y/net/ipv4/tcp_bic.c +=================================================================== +--- linux-2.6.13.y.orig/net/ipv4/tcp_bic.c ++++ linux-2.6.13.y/net/ipv4/tcp_bic.c +@@ -136,7 +136,7 @@ static inline void bictcp_update(struct + else if (cwnd < ca->last_max_cwnd + max_increment*(BICTCP_B-1)) + /* slow start */ + ca->cnt = (cwnd * (BICTCP_B-1)) +- / cwnd-ca->last_max_cwnd; ++ / (cwnd - ca->last_max_cwnd); + else + /* linear increase */ + ca->cnt = cwnd / max_increment; -- 2.47.3