On Thu, Jun 21, 2018 at 7:23 AM, Ursula Braun <ubr...@linux.ibm.com> wrote:
> @@ -605,6 +606,13 @@ static int smc_connect(struct socket *sock, struct 
> sockaddr *addr,
>
>         smc_copy_sock_settings_to_clc(smc);
>         tcp_sk(smc->clcsock->sk)->syn_smc = 1;
> +       if (flags & O_NONBLOCK) {
> +               rcu_read_lock();
> +               smc->smcwq = rcu_dereference(sk->sk_wq);
> +               rcu_assign_pointer(sock->sk->sk_wq,
> +                                  rcu_dereference(smc->clcsock->sk->sk_wq));
> +               rcu_read_unlock();

Are you really deref'ing any RCU pointer here?

Reply via email to