[TCP]: fix D-SACK cwnd handling
authorRyousei Takano <takano-ryousei@aist.go.jp>
Fri, 26 Oct 2007 11:27:59 +0000 (04:27 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 26 Oct 2007 11:27:59 +0000 (04:27 -0700)
commit94d3b1e586f6d4c7150501bde284c544ce99073c
tree6c05886d3ee3ddc30f6b3fce3b6acb27eeab4300
parent43cc7380eced27ee9cafdf89fa32333dc3884e8b
[TCP]: fix D-SACK cwnd handling

In the current net-2.6 kernel, handling FLAG_DSACKING_ACK is broken.
The flag is cleared to 1 just after FLAG_DSACKING_ACK is set.

        if (found_dup_sack)
                flag |= FLAG_DSACKING_ACK;
:
flag = 1;

To fix it, this patch introduces a part of the tcp_sacktag_state patch:
http://marc.info/?l=linux-netdev&m=119210560431519&w=2

Signed-off-by: Ryousei Takano <takano-ryousei@aist.go.jp>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp_input.c