mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
tcp: fix stretch ACK bugs in BIC
Changes BIC to properly handle stretch ACKs in additive increase mode by passing in the count of ACKed packets to tcp_cong_avoid_ai(). Signed-off-by: Pengcheng Yang <yangpc@wangsu.com> Acked-by: Neal Cardwell <ncardwell@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
86e85bf698
commit
be0d935ebf
@@ -145,12 +145,13 @@ static void bictcp_cong_avoid(struct sock *sk, u32 ack, u32 acked)
|
|||||||
if (!tcp_is_cwnd_limited(sk))
|
if (!tcp_is_cwnd_limited(sk))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (tcp_in_slow_start(tp))
|
if (tcp_in_slow_start(tp)) {
|
||||||
tcp_slow_start(tp, acked);
|
acked = tcp_slow_start(tp, acked);
|
||||||
else {
|
if (!acked)
|
||||||
bictcp_update(ca, tp->snd_cwnd);
|
return;
|
||||||
tcp_cong_avoid_ai(tp, ca->cnt, 1);
|
|
||||||
}
|
}
|
||||||
|
bictcp_update(ca, tp->snd_cwnd);
|
||||||
|
tcp_cong_avoid_ai(tp, ca->cnt, acked);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user