diff options
author | Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> | 2013-02-04 02:14:25 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-02-06 15:53:03 -0500 |
commit | 6731d2095bd4aef18027c72ef845ab1087c3ba63 (patch) | |
tree | e0937e662eb7fd4ed026590e8dfa6c3abd37b806 /net/ipv6 | |
parent | b6ec447df935669d670e82bd66d9d161418efdfa (diff) | |
download | op-kernel-dev-6731d2095bd4aef18027c72ef845ab1087c3ba63.zip op-kernel-dev-6731d2095bd4aef18027c72ef845ab1087c3ba63.tar.gz |
tcp: fix for zero packets_in_flight was too broad
There are transients during normal FRTO procedure during which
the packets_in_flight can go to zero between write_queue state
updates and firing the resulting segments out. As FRTO processing
occurs during that window the check must be more precise to
not match "spuriously" :-). More specificly, e.g., when
packets_in_flight is zero but FLAG_DATA_ACKED is true the problematic
branch that set cwnd into zero would not be taken and new segments
might be sent out later.
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Tested-by: Eric Dumazet <edumazet@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
0 files changed, 0 insertions, 0 deletions