Page MenuHomeFreeBSD

D26446.id77076.diff
No OneTemporary

D26446.id77076.diff

Index: sys/netinet/tcp_sack.c
===================================================================
--- sys/netinet/tcp_sack.c
+++ sys/netinet/tcp_sack.c
@@ -787,15 +787,16 @@
tcp_sack_partialack(struct tcpcb *tp, struct tcphdr *th)
{
int num_segs = 1;
+ int maxseg = tcp_maxseg(tp);
INP_WLOCK_ASSERT(tp->t_inpcb);
tcp_timer_activate(tp, TT_REXMT, 0);
tp->t_rtttime = 0;
/* Send one or 2 segments based on how much new data was acked. */
- if ((BYTES_THIS_ACK(tp, th) / tp->t_maxseg) >= 2)
+ if ((BYTES_THIS_ACK(tp, th) / maxseg) >= 2)
num_segs = 2;
tp->snd_cwnd = (tp->sackhint.sack_bytes_rexmit +
- (tp->snd_nxt - tp->snd_recover) + num_segs * tp->t_maxseg);
+ (tp->snd_nxt - tp->snd_recover) + num_segs * maxseg);
if (tp->snd_cwnd > tp->snd_ssthresh)
tp->snd_cwnd = tp->snd_ssthresh;
tp->t_flags |= TF_ACKNOW;

File Metadata

Mime Type
text/plain
Expires
Tue, Nov 25, 9:36 PM (15 h, 22 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
26181775
Default Alt Text
D26446.id77076.diff (845 B)

Event Timeline