Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 277983
b: refs/heads/master
c: f698204
h: refs/heads/master
i:
  277981: c19d292
  277979: ca66eeb
  277975: faf0b9b
  277967: 50423b1
  277951: 912bb3e
v: v3
  • Loading branch information
Neal Cardwell authored and David S. Miller committed Nov 27, 2011
1 parent a51f5f6 commit c87c7c6
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 14 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: e95ae2f2cf10f7bf27b492aa6188f3cd745de162
refs/heads/master: f698204bd0bfdc645642e271da117b56b795aee0
15 changes: 2 additions & 13 deletions trunk/net/ipv4/tcp_input.c
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand Down Expand Up @@ -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);
Expand Down Expand Up @@ -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)) {
Expand Down

0 comments on commit c87c7c6

Please sign in to comment.