Page MenuHomeFreeBSD

D23119.id66647.diff
No OneTemporary

D23119.id66647.diff

Index: sys/netinet/cc/cc_dctcp.c
===================================================================
--- sys/netinet/cc/cc_dctcp.c
+++ sys/netinet/cc/cc_dctcp.c
@@ -284,7 +284,6 @@
dctcp_data->ece_curr = 1;
break;
case CC_RTO:
- CCV(ccv, t_flags2) |= TF2_ECN_SND_CWR;
dctcp_update_alpha(ccv);
dctcp_data->save_sndnxt += CCV(ccv, t_maxseg);
dctcp_data->num_cong_events++;
Index: sys/netinet/tcp_input.c
===================================================================
--- sys/netinet/tcp_input.c
+++ sys/netinet/tcp_input.c
@@ -460,6 +460,8 @@
tp->snd_ssthresh = max(2, min(tp->snd_wnd, tp->snd_cwnd) / 2 /
maxseg) * maxseg;
tp->snd_cwnd = maxseg;
+ if (tp->t_flags2 & TF2_ECN_PERMIT)
+ tp->t_flags2 |= TF2_ECN_SND_CWR;
break;
case CC_RTO_ERR:
TCPSTAT_INC(tcps_sndrexmitbad);
Index: sys/netinet/tcp_stacks/rack.c
===================================================================
--- sys/netinet/tcp_stacks/rack.c
+++ sys/netinet/tcp_stacks/rack.c
@@ -1813,6 +1813,8 @@
tp->snd_ssthresh = max(2, min(tp->snd_wnd, tp->snd_cwnd) / 2 /
ctf_fixed_maxseg(tp)) * ctf_fixed_maxseg(tp);
tp->snd_cwnd = ctf_fixed_maxseg(tp);
+ if (tp->t_flags2 & TF2_ECN_PERMIT)
+ tp->t_flags2 |= TF2_ECN_SND_CWR;
break;
case CC_RTO_ERR:
TCPSTAT_INC(tcps_sndrexmitbad);

File Metadata

Mime Type
text/plain
Expires
Fri, Apr 10, 11:19 AM (6 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31223459
Default Alt Text
D23119.id66647.diff (1 KB)

Event Timeline