From: soltesz@opentechinstitute.org Date: Wed, 5 Jun 2013 20:04:57 +0000 (-0400) Subject: add patch to revert condition that can set RTT=0 X-Git-Url: http://git.onelab.eu/?p=linux-2.6.git;a=commitdiff_plain;h=refs%2Fheads%2Frhel6-mlab add patch to revert condition that can set RTT=0 The main-line kernel included this change to attempt to address RTO calculations. However, M-Lab has discovered that for Windows clients this incorrectly calculates the web100.MinRTT value. So, this patch reverts the change in order to preserve the MinRTT calculation. http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/net/ipv4/tcp_input.c?id=598856407d4e20ebb4de01a91a93d89325924d43 --- diff --git a/kernel-2.6.spec b/kernel-2.6.spec index cabee1f37..04dc109c6 100644 --- a/kernel-2.6.spec +++ b/kernel-2.6.spec @@ -11,7 +11,7 @@ URL: %{SCMURL} %define name linux-2.6 %define module_version_varname sublevel # 131 borrowed from centos6.1, tg3 from 220 centos 6.2 -%define taglevel 131.vs230.web10027.xidmask +%define taglevel 131.vs230.web10027.xidmask.2 %define sublevel 33 @@ -687,6 +687,7 @@ Patch20: linux-2.6-680-htb-hysteresis-tso.patch Patch21: linux-2.6-690-web100.patch Patch22: linux-2.6-700-bcm5720.patch Patch23: linux-2.6-710-xidmask.patch +Patch24: linux-2.6-720-undo-rttzero.patch Patch10000: linux-2.6-10000-gcc-4.5.patch Patch10001: linux-2.6-10001-gcc-4.6-warnoff.patch @@ -1009,6 +1010,7 @@ ApplyPatch linux-2.6-680-htb-hysteresis-tso.patch ApplyPatch linux-2.6-690-web100.patch ApplyPatch linux-2.6-700-bcm5720.patch ApplyPatch linux-2.6-710-xidmask.patch +ApplyPatch linux-2.6-720-undo-rttzero.patch ApplyPatch linux-2.6-10000-gcc-4.5.patch ApplyPatch linux-2.6-10001-gcc-4.6-warnoff.patch ApplyPatch linux-2.6-10002-gcc-4.6-sense_buffer.patch diff --git a/linux-2.6-720-undo-rttzero.patch b/linux-2.6-720-undo-rttzero.patch new file mode 100644 index 000000000..526f3f578 --- /dev/null +++ b/linux-2.6-720-undo-rttzero.patch @@ -0,0 +1,17 @@ +diff -Ndur linux-2.6.32-orig/net/ipv4/tcp_input.c linux-2.6.32-undorttzero/net/ipv4/tcp_input.c +--- linux-2.6.32-orig/net/ipv4/tcp_input.c 2013-06-05 15:47:10.551009408 -0400 ++++ linux-2.6.32-undorttzero/net/ipv4/tcp_input.c 2013-06-05 15:49:32.458996663 -0400 +@@ -5783,9 +5783,11 @@ + + /* tcp_ack considers this ACK as duplicate + * and does not calculate rtt. +- * Force it here. ++ * Fix it at least with timestamps. + */ +- tcp_ack_update_rtt(sk, 0, 0); ++ if (tp->rx_opt.saw_tstamp && ++ tp->rx_opt.rcv_tsecr && !tp->srtt) ++ tcp_ack_saw_tstamp(sk, 0); + + if (tp->rx_opt.tstamp_ok) + tp->advmss -= TCPOLEN_TSTAMP_ALIGNED;