diff options
Diffstat (limited to 'net/ipv4/tcp_input.c')
-rw-r--r-- | net/ipv4/tcp_input.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 7b1fddc47019..0003d409fec5 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c | |||
@@ -2478,6 +2478,9 @@ static void tcp_cwnd_reduction(struct sock *sk, const int prior_unsacked, | |||
2478 | int newly_acked_sacked = prior_unsacked - | 2478 | int newly_acked_sacked = prior_unsacked - |
2479 | (tp->packets_out - tp->sacked_out); | 2479 | (tp->packets_out - tp->sacked_out); |
2480 | 2480 | ||
2481 | if (newly_acked_sacked <= 0 || WARN_ON_ONCE(!tp->prior_cwnd)) | ||
2482 | return; | ||
2483 | |||
2481 | tp->prr_delivered += newly_acked_sacked; | 2484 | tp->prr_delivered += newly_acked_sacked; |
2482 | if (delta < 0) { | 2485 | if (delta < 0) { |
2483 | u64 dividend = (u64)tp->snd_ssthresh * tp->prr_delivered + | 2486 | u64 dividend = (u64)tp->snd_ssthresh * tp->prr_delivered + |