From c87c7c686cd329342dc496451fc31054f1e38c5e Mon Sep 17 00:00:00 2001 From: Neal Cardwell Date: Wed, 16 Nov 2011 08:58:04 +0000 Subject: [PATCH] --- yaml --- r: 277983 b: refs/heads/master c: f698204bd0bfdc645642e271da117b56b795aee0 h: refs/heads/master i: 277981: c19d292af95c4d99dc4d761515a44fb533271839 277979: ca66eeb40a7d7b0ccb4b1cfba00cdc329d14fe78 277975: faf0b9b85b486d7ca9970e44d27ad5cf37609097 277967: 50423b1aaa21cee9980ec3b39eb3c0ceae4f6c79 277951: 912bb3e6d9ef2fe15cb23712e9d113d99e8a8c95 v: v3 --- [refs] | 2 +- trunk/net/ipv4/tcp_input.c | 15 ++------------- 2 files changed, 3 insertions(+), 14 deletions(-) diff --git a/[refs] b/[refs] index a9a128606ef3..86ff7ce74c92 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e95ae2f2cf10f7bf27b492aa6188f3cd745de162 +refs/heads/master: f698204bd0bfdc645642e271da117b56b795aee0 diff --git a/trunk/net/ipv4/tcp_input.c b/trunk/net/ipv4/tcp_input.c index 751d39060fb8..a4efdd7cf5a1 100644 --- a/trunk/net/ipv4/tcp_input.c +++ b/trunk/net/ipv4/tcp_input.c @@ -2858,7 +2858,7 @@ static void tcp_try_keep_open(struct sock *sk) struct tcp_sock *tp = tcp_sk(sk); int state = TCP_CA_Open; - if (tcp_left_out(tp) || tcp_any_retrans_done(sk) || tp->undo_marker) + if (tcp_left_out(tp) || tcp_any_retrans_done(sk)) state = TCP_CA_Disorder; if (inet_csk(sk)->icsk_ca_state != state) { @@ -3066,17 +3066,6 @@ static void tcp_fastretrans_alert(struct sock *sk, int pkts_acked, } break; - case TCP_CA_Disorder: - tcp_try_undo_dsack(sk); - if (!tp->undo_marker || - /* For SACK case do not Open to allow to undo - * catching for all duplicate ACKs. */ - tcp_is_reno(tp) || tp->snd_una != tp->high_seq) { - tp->undo_marker = 0; - tcp_set_ca_state(sk, TCP_CA_Open); - } - break; - case TCP_CA_Recovery: if (tcp_is_reno(tp)) tcp_reset_reno_sack(tp); @@ -3117,7 +3106,7 @@ static void tcp_fastretrans_alert(struct sock *sk, int pkts_acked, tcp_add_reno_sack(sk); } - if (icsk->icsk_ca_state == TCP_CA_Disorder) + if (icsk->icsk_ca_state <= TCP_CA_Disorder) tcp_try_undo_dsack(sk); if (!tcp_time_to_recover(sk)) {