Lines Matching defs:smc

24 #include "smc.h"
44 struct smc_sock *smc = smc_sk(sk);
48 if (atomic_read(&smc->conn.sndbuf_space) && sock) {
50 SMC_STAT_RMB_TX_FULL(smc, !smc->conn.lnk);
67 void smc_tx_sndbuf_nonfull(struct smc_sock *smc)
69 if (smc->sk.sk_socket &&
70 test_bit(SOCK_NOSPACE, &smc->sk.sk_socket->flags))
71 smc->sk.sk_write_space(&smc->sk);
77 static int smc_tx_wait(struct smc_sock *smc, int flags)
80 struct smc_connection *conn = &smc->conn;
81 struct sock *sk = &smc->sk;
127 static bool smc_tx_is_corked(struct smc_sock *smc)
129 struct tcp_sock *tp = tcp_sk(smc->clcsock->sk);
145 static bool smc_should_autocork(struct smc_sock *smc)
147 struct smc_connection *conn = &smc->conn;
151 sock_net(&smc->sk)->smc.sysctl_autocorking_size);
159 static bool smc_tx_should_cork(struct smc_sock *smc, struct msghdr *msg)
161 struct smc_connection *conn = &smc->conn;
163 if (smc_should_autocork(smc))
171 smc_tx_is_corked(smc)) &&
181 int smc_tx_sendmsg(struct smc_sock *smc, struct msghdr *msg, size_t len)
185 struct smc_connection *conn = &smc->conn;
187 struct sock *sk = &smc->sk;
205 SMC_STAT_RMB_TX_SIZE_SMALL(smc, !conn->lnk);
208 SMC_STAT_RMB_TX_PEER_SIZE_SMALL(smc, !conn->lnk);
211 SMC_STAT_INC(smc, urg_data_cnt);
214 if (smc->sk.sk_shutdown & SEND_SHUTDOWN ||
215 (smc->sk.sk_err == ECONNABORTED) ||
227 rc = smc_tx_wait(smc, msg->msg_flags);
284 if (!smc_tx_should_cork(smc, msg))
287 trace_smc_tx_sendmsg(smc, copylen);
484 struct smc_sock *smc = container_of(conn, struct smc_sock,
486 SMC_STAT_RMB_TX_PEER_FULL(smc, !conn->lnk);
562 struct smc_sock *smc =
565 if (smc->sk.sk_err == ECONNABORTED)
566 return sock_error(&smc->sk);
626 struct smc_sock *smc = container_of(conn, struct smc_sock, conn);
635 SMC_STAT_RMB_TX_PEER_FULL(smc, !conn->lnk);
651 smc_close_wake_tx_prepared(smc);
692 struct smc_sock *smc = container_of(conn, struct smc_sock, conn);
695 if (smc->sk.sk_err)
713 struct smc_sock *smc = container_of(conn, struct smc_sock, conn);
715 lock_sock(&smc->sk);
717 release_sock(&smc->sk);
759 void smc_tx_init(struct smc_sock *smc)
761 smc->sk.sk_write_space = smc_tx_write_space;