aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_output.c
diff options
context:
space:
mode:
authorIlpo Järvinen <ilpo.jarvinen@helsinki.fi>2009-02-28 04:44:27 +0000
committerDavid S. Miller <davem@davemloft.net>2009-03-02 03:00:08 -0800
commitac11ba753f3aa839292c1a3b6c971c637ad2e839 (patch)
tree36bedcc6c6d6be721f2b9c5c0e5b8bf66ca112a5 /net/ipv4/tcp_output.c
parent79cb5def8dcad1a978841118bd14e155b3fd5589 (diff)
downloadkernel_goldelico_gta04-ac11ba753f3aa839292c1a3b6c971c637ad2e839.zip
kernel_goldelico_gta04-ac11ba753f3aa839292c1a3b6c971c637ad2e839.tar.gz
kernel_goldelico_gta04-ac11ba753f3aa839292c1a3b6c971c637ad2e839.tar.bz2
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 f6f61b3..2471cd4 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;