Set the backlog earlier in inet_dccp_listen() and inet_listen(),
then we can avoid the redundant setting.
Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
        if (!((1 << old_state) & (DCCPF_CLOSED | DCCPF_LISTEN)))
                goto out;
 
+       sk->sk_max_ack_backlog = backlog;
        /* Really, if the socket is already in listen state
         * we can only allow the backlog to be adjusted.
         */
                if (err)
                        goto out;
        }
-       sk->sk_max_ack_backlog = backlog;
        err = 0;
 
 out:
 
        if (!((1 << old_state) & (TCPF_CLOSE | TCPF_LISTEN)))
                goto out;
 
+       sk->sk_max_ack_backlog = backlog;
        /* Really, if the socket is already in listen state
         * we can only allow the backlog to be adjusted.
         */
                        goto out;
                tcp_call_bpf(sk, BPF_SOCK_OPS_TCP_LISTEN_CB, 0, NULL);
        }
-       sk->sk_max_ack_backlog = backlog;
        err = 0;
 
 out:
 
 
        reqsk_queue_alloc(&icsk->icsk_accept_queue);
 
-       sk->sk_max_ack_backlog = backlog;
        sk->sk_ack_backlog = 0;
        inet_csk_delack_init(sk);