mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
Correct a bug in TCP SACK that could result in wedging of the TCP stack
under high load: only set function state to loop and continuing sending if there is no data left to send. RELENG_5_3 candidate. Feet provided: Peter Losher <Peter underscore Losher at isc dot org> Diagnosed by: Aniel Hartmeier <daniel at benzedrine dot cx> Submitted by: mohan <mohans at yahoo-inc dot com>
This commit is contained in:
parent
0b762445b9
commit
ab5c14d828
1 changed files with 2 additions and 2 deletions
|
|
@ -231,12 +231,12 @@ again:
|
|||
tp->snd_recover - p->rxmit));
|
||||
} else
|
||||
len = ((long)ulmin(cwin, p->end - p->rxmit));
|
||||
sack_rxmit = 1;
|
||||
sendalot = 1;
|
||||
off = p->rxmit - tp->snd_una;
|
||||
KASSERT(off >= 0,("%s: sack block to the left of una : %d",
|
||||
__func__, off));
|
||||
if (len > 0) {
|
||||
sack_rxmit = 1;
|
||||
sendalot = 1;
|
||||
tcpstat.tcps_sack_rexmits++;
|
||||
tcpstat.tcps_sack_rexmit_bytes +=
|
||||
min(len, tp->t_maxseg);
|
||||
|
|
|
|||
Loading…
Reference in a new issue