Lines Matching refs:lsmc
1114 static int smc_clcsock_accept(struct smc_sock *lsmc, struct smc_sock **new_smc) in smc_clcsock_accept() argument
1117 struct sock *lsk = &lsmc->sk; in smc_clcsock_accept()
1132 mutex_lock(&lsmc->clcsock_release_lock); in smc_clcsock_accept()
1133 if (lsmc->clcsock) in smc_clcsock_accept()
1134 rc = kernel_accept(lsmc->clcsock, &new_clcsock, SOCK_NONBLOCK); in smc_clcsock_accept()
1135 mutex_unlock(&lsmc->clcsock_release_lock); in smc_clcsock_accept()
1153 new_clcsock->sk->sk_data_ready = lsmc->clcsk_data_ready; in smc_clcsock_accept()
1279 struct smc_sock *lsmc = new_smc->listen_smc; in smc_listen_out() local
1282 if (lsmc->sk.sk_state == SMC_LISTEN) { in smc_listen_out()
1283 lock_sock_nested(&lsmc->sk, SINGLE_DEPTH_NESTING); in smc_listen_out()
1284 smc_accept_enqueue(&lsmc->sk, newsmcsk); in smc_listen_out()
1285 release_sock(&lsmc->sk); in smc_listen_out()
1291 lsmc->sk.sk_data_ready(&lsmc->sk); in smc_listen_out()
1292 sock_put(&lsmc->sk); /* sock_hold in smc_tcp_listen_work */ in smc_listen_out()
1781 struct smc_sock *lsmc = container_of(work, struct smc_sock, in smc_tcp_listen_work() local
1783 struct sock *lsk = &lsmc->sk; in smc_tcp_listen_work()
1789 rc = smc_clcsock_accept(lsmc, &new_smc); in smc_tcp_listen_work()
1795 new_smc->listen_smc = lsmc; in smc_tcp_listen_work()
1796 new_smc->use_fallback = lsmc->use_fallback; in smc_tcp_listen_work()
1797 new_smc->fallback_rsn = lsmc->fallback_rsn; in smc_tcp_listen_work()
1801 new_smc->sk.sk_sndbuf = lsmc->sk.sk_sndbuf; in smc_tcp_listen_work()
1802 new_smc->sk.sk_rcvbuf = lsmc->sk.sk_rcvbuf; in smc_tcp_listen_work()
1810 sock_put(&lsmc->sk); /* sock_hold in smc_clcsock_data_ready() */ in smc_tcp_listen_work()
1815 struct smc_sock *lsmc; in smc_clcsock_data_ready() local
1817 lsmc = (struct smc_sock *) in smc_clcsock_data_ready()
1819 if (!lsmc) in smc_clcsock_data_ready()
1821 lsmc->clcsk_data_ready(listen_clcsock); in smc_clcsock_data_ready()
1822 if (lsmc->sk.sk_state == SMC_LISTEN) { in smc_clcsock_data_ready()
1823 sock_hold(&lsmc->sk); /* sock_put in smc_tcp_listen_work() */ in smc_clcsock_data_ready()
1824 if (!queue_work(smc_hs_wq, &lsmc->tcp_listen_work)) in smc_clcsock_data_ready()
1825 sock_put(&lsmc->sk); in smc_clcsock_data_ready()
1879 struct smc_sock *lsmc; in smc_accept() local
1883 lsmc = smc_sk(sk); in smc_accept()
1887 if (lsmc->sk.sk_state != SMC_LISTEN) { in smc_accept()
1921 if (lsmc->sockopt_defer_accept && !(flags & O_NONBLOCK)) { in smc_accept()
1923 timeo = msecs_to_jiffies(lsmc->sockopt_defer_accept * in smc_accept()