]> git.baikalelectronics.ru Git - kernel.git/commit
tcp: fix undo on partial ack in recovery
authorYuchung Cheng <ycheng@google.com>
Wed, 29 May 2013 14:20:13 +0000 (14:20 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 31 May 2013 01:06:11 +0000 (18:06 -0700)
commit422d1ccda7785bb868c1faa1e9be7a6f26c22cd7
treee28001900a9bb89adc7de5cd4145157d3e7aafea
parent4a9aa2b5a9522e86e9e481ff691eb97be2a38b59
tcp: fix undo on partial ack in recovery

Upon detecting spurious fast retransmit via timestamps during recovery,
use PRR to clock out new data packet instead of retransmission. Once
all retransmission are proven spurious, the sender then reverts the
cwnd reduction and congestion state to open or disorder.

The current code does the opposite: it undoes cwnd as soon as any
retransmission is spurious and continues to retransmit until all
data are acked. This nullifies the point to undo the cwnd because
the sender is still retransmistting spuriously. This patch fixes
it. The undo_ssthresh argument of tcp_undo_cwnd_reductiuon() is no
longer needed and is removed.

Signed-off-by: Yuchung Cheng <ycheng@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp_input.c