diff options
author | David S. Miller <davem@davemloft.net> | 2008-06-16 16:57:40 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-06-16 16:57:40 -0700 |
commit | 93653e0448196344d7699ccad395eaebd30359d1 (patch) | |
tree | 1016de074b6921c4fa932ed0046b7557472a02c5 /net/ipv4 | |
parent | 2b4743bd6be9fedaa560f8c6dc3997e9ec21b99b (diff) | |
download | op-kernel-dev-93653e0448196344d7699ccad395eaebd30359d1.zip op-kernel-dev-93653e0448196344d7699ccad395eaebd30359d1.tar.gz |
tcp: Revert reset of deferred accept changes in 2.6.26
Ingo's system is still seeing strange behavior, and he
reports that is goes away if the rest of the deferred
accept changes are reverted too.
Therefore this reverts e4c78840284f3f51b1896cf3936d60a6033c4d2c
("[TCP]: TCP_DEFER_ACCEPT updates - dont retxmt synack") and
539fae89bebd16ebeafd57a87169bc56eb530d76 ("[TCP]: TCP_DEFER_ACCEPT
updates - defer timeout conflicts with max_thresh").
Just like the other revert, these ideas can be revisited for
2.6.27
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4')
-rw-r--r-- | net/ipv4/inet_connection_sock.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c index 045e799..ec83448 100644 --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c @@ -466,9 +466,9 @@ void inet_csk_reqsk_queue_prune(struct sock *parent, reqp=&lopt->syn_table[i]; while ((req = *reqp) != NULL) { if (time_after_eq(now, req->expires)) { - if ((req->retrans < (inet_rsk(req)->acked ? max_retries : thresh)) && - (inet_rsk(req)->acked || - !req->rsk_ops->rtx_syn_ack(parent, req))) { + if ((req->retrans < thresh || + (inet_rsk(req)->acked && req->retrans < max_retries)) + && !req->rsk_ops->rtx_syn_ack(parent, req)) { unsigned long timeo; if (req->retrans++ == 0) |