summaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_output.c
diff options
context:
space:
mode:
authorIlpo Järvinen2009-02-28 05:44:27 +0100
committerDavid S. Miller2009-03-02 12:00:08 +0100
commitac11ba753f3aa839292c1a3b6c971c637ad2e839 (patch)
tree36bedcc6c6d6be721f2b9c5c0e5b8bf66ca112a5 /net/ipv4/tcp_output.c
parentjme: Advance version number after previous changes (diff)
downloadkernel-qcow2-linux-ac11ba753f3aa839292c1a3b6c971c637ad2e839.tar.gz
kernel-qcow2-linux-ac11ba753f3aa839292c1a3b6c971c637ad2e839.tar.xz
kernel-qcow2-linux-ac11ba753f3aa839292c1a3b6c971c637ad2e839.zip
tcp: don't backtrack to sacked skbs
Backtracking to sacked skbs is a horrible performance killer since the hint cannot be advanced successfully past them... ...And it's totally unnecessary too. In theory this is 2.6.27..28 regression but I doubt anybody can make .28 to have worse performance because of other TCP improvements. Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_output.c')
-rw-r--r--net/ipv4/tcp_output.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index f6f61b3e677b..2471cd4f66db 100644
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
@@ -2065,7 +2065,7 @@ begin_fwd:
goto begin_fwd;
} else if (!(sacked & TCPCB_LOST)) {
- if (hole == NULL && !(sacked & TCPCB_SACKED_RETRANS))
+ if (hole == NULL && !(sacked & (TCPCB_SACKED_RETRANS|TCPCB_SACKED_ACKED)))
hole = skb;
continue;