Page MenuHomeFreeBSD

D23364.id67291.diff
No OneTemporary

D23364.id67291.diff

Index: sys/netinet/tcp_output.c
===================================================================
--- sys/netinet/tcp_output.c
+++ sys/netinet/tcp_output.c
@@ -1171,15 +1171,15 @@
#endif
ip->ip_tos |= IPTOS_ECN_ECT0;
TCPSTAT_INC(tcps_ecn_ect0);
+ /*
+ * Reply with proper ECN notifications.
+ * Only set CWR on new data segments
+ */
+ if (tp->t_flags2 & TF2_ECN_SND_CWR) {
+ flags |= TH_CWR;
+ tp->t_flags2 &= ~TF2_ECN_SND_CWR;
+ }
}
-
- /*
- * Reply with proper ECN notifications.
- */
- if (tp->t_flags2 & TF2_ECN_SND_CWR) {
- flags |= TH_CWR;
- tp->t_flags2 &= ~TF2_ECN_SND_CWR;
- }
if (tp->t_flags2 & TF2_ECN_SND_ECE)
flags |= TH_ECE;
}

File Metadata

Mime Type
text/plain
Expires
Sat, Jul 25, 4:01 AM (10 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35461336
Default Alt Text
D23364.id67291.diff (701 B)

Event Timeline