We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 7856e86 commit 9aee400Copy full SHA for 9aee400
net/ipv4/tcp_input.c
@@ -246,8 +246,15 @@ static void tcp_ecn_queue_cwr(struct tcp_sock *tp)
246
247
static void tcp_ecn_accept_cwr(struct tcp_sock *tp, const struct sk_buff *skb)
248
{
249
- if (tcp_hdr(skb)->cwr)
+ if (tcp_hdr(skb)->cwr) {
250
tp->ecn_flags &= ~TCP_ECN_DEMAND_CWR;
251
+
252
+ /* If the sender is telling us it has entered CWR, then its
253
+ * cwnd may be very low (even just 1 packet), so we should ACK
254
+ * immediately.
255
+ */
256
+ tcp_enter_quickack_mode((struct sock *)tp, 2);
257
+ }
258
}
259
260
static void tcp_ecn_withdraw_cwr(struct tcp_sock *tp)
0 commit comments