diff options
author | Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> | 2009-02-27 23:44:27 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-03-02 06:00:08 -0500 |
commit | ac11ba753f3aa839292c1a3b6c971c637ad2e839 (patch) | |
tree | 36bedcc6c6d6be721f2b9c5c0e5b8bf66ca112a5 | |
parent | 79cb5def8dcad1a978841118bd14e155b3fd5589 (diff) |
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>
-rw-r--r-- | net/ipv4/tcp_output.c | 2 |
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: | |||
2065 | goto begin_fwd; | 2065 | goto begin_fwd; |
2066 | 2066 | ||
2067 | } else if (!(sacked & TCPCB_LOST)) { | 2067 | } else if (!(sacked & TCPCB_LOST)) { |
2068 | if (hole == NULL && !(sacked & TCPCB_SACKED_RETRANS)) | 2068 | if (hole == NULL && !(sacked & (TCPCB_SACKED_RETRANS|TCPCB_SACKED_ACKED))) |
2069 | hole = skb; | 2069 | hole = skb; |
2070 | continue; | 2070 | continue; |
2071 | 2071 | ||