--- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -5921,8 +5921,8 @@ void tcp_init_transfer(struct sock *sk, tp->snd_cwnd = tcp_init_cwnd(tp, __sk_dst_get(sk)); tp->snd_cwnd_stamp = tcp_jiffies32; - icsk->icsk_ca_initialized = 0; bpf_skops_established(sk, bpf_op, skb); + /* Initialize congestion control unless BPF initialized it already: */ if (!icsk->icsk_ca_initialized) tcp_init_congestion_control(sk); tcp_init_buffer_space(sk);