/linux/net/sunrpc/ |
H A D | xprt.c | 72 static void xprt_init(struct rpc_xprt *xprt, struct net *net); 73 static __be32 xprt_alloc_xid(struct rpc_xprt *xprt); 74 static void xprt_destroy(struct rpc_xprt *xprt); 247 static void xprt_clear_locked(struct rpc_xprt *xprt) in xprt_clear_locked() argument 249 xprt->snd_task = NULL; in xprt_clear_locked() 250 if (!test_bit(XPRT_CLOSE_WAIT, &xprt->state)) in xprt_clear_locked() 251 clear_bit_unlock(XPRT_LOCKED, &xprt->state); in xprt_clear_locked() 253 queue_work(xprtiod_workqueue, &xprt->task_cleanup); in xprt_clear_locked() 265 int xprt_reserve_xprt(struct rpc_xprt *xprt, struct rpc_task *task) in xprt_reserve_xprt() argument 269 if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) { in xprt_reserve_xprt() [all …]
|
H A D | xprtsock.c | 64 static void xs_close(struct rpc_xprt *xprt); 67 static void xs_tcp_set_socket_timeouts(struct rpc_xprt *xprt, 234 static inline struct sockaddr *xs_addr(struct rpc_xprt *xprt) in xs_addr() argument 236 return (struct sockaddr *) &xprt->addr; in xs_addr() 239 static inline struct sockaddr_un *xs_addr_un(struct rpc_xprt *xprt) in xs_addr_un() argument 241 return (struct sockaddr_un *) &xprt->addr; in xs_addr_un() 244 static inline struct sockaddr_in *xs_addr_in(struct rpc_xprt *xprt) in xs_addr_in() argument 246 return (struct sockaddr_in *) &xprt->addr; in xs_addr_in() 249 static inline struct sockaddr_in6 *xs_addr_in6(struct rpc_xprt *xprt) in xs_addr_in6() argument 251 return (struct sockaddr_in6 *) &xprt->addr; in xs_addr_in6() [all …]
|
H A D | svc_xprt.c | 18 #include <linux/sunrpc/xprt.h> 30 static struct svc_deferred_req *svc_deferred_dequeue(struct svc_xprt *xprt); 34 static void svc_delete_xprt(struct svc_xprt *xprt); 55 * The XPT_BUSY bit in xprt->xpt_flags prevents a transport being 153 * @xprt: transport instance 158 void svc_xprt_deferred_close(struct svc_xprt *xprt) in svc_xprt_deferred_close() argument 160 trace_svc_xprt_close(xprt); in svc_xprt_deferred_close() 161 if (!test_and_set_bit(XPT_CLOSE, &xprt->xpt_flags)) in svc_xprt_deferred_close() 162 svc_xprt_enqueue(xprt); in svc_xprt_deferred_close() 168 struct svc_xprt *xprt in svc_xprt_free() local 185 svc_xprt_put(struct svc_xprt * xprt) svc_xprt_put() argument 196 svc_xprt_init(struct net * net,struct svc_xprt_class * xcl,struct svc_xprt * xprt,struct svc_serv * serv) svc_xprt_init() argument 224 svc_xprt_received(struct svc_xprt * xprt) svc_xprt_received() argument 382 svc_xprt_copy_addrs(struct svc_rqst * rqstp,struct svc_xprt * xprt) svc_xprt_copy_addrs() argument 409 svc_xprt_slots_in_range(struct svc_xprt * xprt) svc_xprt_slots_in_range() argument 417 svc_xprt_reserve_slot(struct svc_rqst * rqstp,struct svc_xprt * xprt) svc_xprt_reserve_slot() argument 430 struct svc_xprt *xprt = rqstp->rq_xprt; svc_xprt_release_slot() local 438 svc_xprt_ready(struct svc_xprt * xprt) svc_xprt_ready() argument 473 svc_xprt_enqueue(struct svc_xprt * xprt) svc_xprt_enqueue() argument 502 struct svc_xprt *xprt = NULL; svc_xprt_dequeue() local 522 struct svc_xprt *xprt = rqstp->rq_xprt; svc_reserve() local 535 free_deferred(struct svc_xprt * xprt,struct svc_deferred_req * dr) free_deferred() argument 546 struct svc_xprt *xprt = rqstp->rq_xprt; svc_xprt_release() local 632 struct svc_xprt *xprt = NULL; svc_check_conn_limits() local 778 svc_handle_xprt(struct svc_rqst * rqstp,struct svc_xprt * xprt) svc_handle_xprt() argument 876 struct svc_xprt *xprt = rqstp->rq_xprt; svc_recv() local 924 struct svc_xprt *xprt; svc_send() local 950 struct svc_xprt *xprt; svc_age_temp_xprts() local 992 struct svc_xprt *xprt; svc_age_temp_xprts_now() local 1020 call_xpt_users(struct svc_xprt * xprt) call_xpt_users() argument 1036 svc_delete_xprt(struct svc_xprt * xprt) svc_delete_xprt() argument 1067 svc_xprt_close(struct svc_xprt * xprt) svc_xprt_close() argument 1086 struct svc_xprt *xprt; svc_close_list() local 1103 struct svc_xprt *xprt; svc_clean_up_xprts() local 1161 struct svc_xprt *xprt = dr->xprt; svc_revisit() local 1261 svc_deferred_dequeue(struct svc_xprt * xprt) svc_deferred_dequeue() argument 1293 struct svc_xprt *xprt; svc_find_listener() local 1333 struct svc_xprt *xprt; svc_find_xprt() local 1359 svc_one_xprt_name(const struct svc_xprt * xprt,char * pos,int remaining) svc_one_xprt_name() argument 1386 struct svc_xprt *xprt; svc_xprt_names() local [all...] |
H A D | backchannel_rqst.c | 22 unsigned int xprt_bc_max_slots(struct rpc_xprt *xprt) in xprt_bc_max_slots() argument 31 static inline int xprt_need_to_requeue(struct rpc_xprt *xprt) in xprt_need_to_requeue() argument 33 return xprt->bc_alloc_count < xprt->bc_alloc_max; in xprt_need_to_requeue() 75 static struct rpc_rqst *xprt_alloc_bc_req(struct rpc_xprt *xprt) in xprt_alloc_bc_req() argument 85 req->rq_xprt = xprt; in xprt_alloc_bc_req() 123 int xprt_setup_backchannel(struct rpc_xprt *xprt, unsigned int min_reqs) in xprt_setup_backchannel() argument 125 if (!xprt->ops->bc_setup) in xprt_setup_backchannel() 127 return xprt->ops->bc_setup(xprt, min_reqs); in xprt_setup_backchannel() 131 int xprt_setup_bc(struct rpc_xprt *xprt, unsigned int min_reqs) in xprt_setup_bc() argument 153 req = xprt_alloc_bc_req(xprt); in xprt_setup_bc() [all …]
|
H A D | sysfs.c | 68 return xprt_get(x->xprt); in rpc_sysfs_xprt_kobj_get_xprt() 93 struct rpc_xprt *xprt = rpc_sysfs_xprt_kobj_get_xprt(kobj); in rpc_sysfs_xprt_dstaddr_show() local 96 if (!xprt) { in rpc_sysfs_xprt_dstaddr_show() 100 ret = sprintf(buf, "%s\n", xprt->address_strings[RPC_DISPLAY_ADDR]); in rpc_sysfs_xprt_dstaddr_show() 101 xprt_put(xprt); in rpc_sysfs_xprt_dstaddr_show() 110 struct rpc_xprt *xprt = rpc_sysfs_xprt_kobj_get_xprt(kobj); in rpc_sysfs_xprt_srcaddr_show() local 114 if (!xprt || !xprt_connected(xprt)) { in rpc_sysfs_xprt_srcaddr_show() 116 } else if (xprt->ops->get_srcaddr) { in rpc_sysfs_xprt_srcaddr_show() 117 ret = xprt->ops->get_srcaddr(xprt, buf, buflen); in rpc_sysfs_xprt_srcaddr_show() 128 xprt_put(xprt); in rpc_sysfs_xprt_srcaddr_show() [all …]
|
H A D | xprtmultipath.c | 33 struct rpc_xprt *xprt) in xprt_switch_add_xprt_locked() argument 35 if (unlikely(xprt_get(xprt) == NULL)) in xprt_switch_add_xprt_locked() 37 list_add_tail_rcu(&xprt->xprt_switch, &xps->xps_xprt_list); in xprt_switch_add_xprt_locked() 40 xps->xps_net = xprt->xprt_net; in xprt_switch_add_xprt_locked() 53 struct rpc_xprt *xprt) in rpc_xprt_switch_add_xprt() argument 55 if (xprt == NULL) in rpc_xprt_switch_add_xprt() 58 if (xps->xps_net == xprt->xprt_net || xps->xps_net == NULL) in rpc_xprt_switch_add_xprt() 59 xprt_switch_add_xprt_locked(xps, xprt); in rpc_xprt_switch_add_xprt() 61 rpc_sysfs_xprt_setup(xps, xprt, GFP_KERNEL); in rpc_xprt_switch_add_xprt() 65 struct rpc_xprt *xprt, bool offline) in xprt_switch_remove_xprt_locked() argument [all …]
|
H A D | clnt.c | 264 struct rpc_xprt *xprt, in rpc_clients_notifier_unregister() 273 if (!xprt_bound(xprt)) in rpc_clnt_set_transport() 277 rcu_assign_pointer(clnt->cl_xprt, xprt); in rpc_clnt_set_transport() 366 struct rpc_xprt *xprt, in rpc_free_clid() 413 timeout = xprt->timeout; in rpc_new_client() 420 rpc_clnt_set_transport(clnt, xprt, timeout); in rpc_new_client() 421 xprt->main = true; in rpc_new_client() 442 trace_rpc_clnt_new(clnt, xprt, args); in rpc_new_client() 456 xprt_put(xprt); in rpc_new_client() 462 struct rpc_xprt *xprt) in rpc_new_client() 269 rpc_clnt_set_transport(struct rpc_clnt * clnt,struct rpc_xprt * xprt,const struct rpc_timeout * timeout) rpc_clnt_set_transport() argument 371 rpc_new_client(const struct rpc_create_args * args,struct rpc_xprt_switch * xps,struct rpc_xprt * xprt,struct rpc_clnt * parent) rpc_new_client() argument 467 rpc_create_xprt(struct rpc_create_args * args,struct rpc_xprt * xprt) rpc_create_xprt() argument 536 struct rpc_xprt *xprt; rpc_create() local 642 struct rpc_xprt *xprt; __rpc_clone_client() local 745 struct rpc_xprt *xprt, *old; rpc_switch_client_transport() local 868 struct rpc_xprt *xprt = xprt_iter_get_next(&xpi); rpc_clnt_iterate_for_each_xprt() local 943 rpc_clnt_disconnect_xprt(struct rpc_clnt * clnt,struct rpc_xprt * xprt,void * dummy) rpc_clnt_disconnect_xprt() argument 1093 rpc_task_get_xprt(struct rpc_clnt * clnt,struct rpc_xprt * xprt) rpc_task_get_xprt() argument 1109 rpc_task_release_xprt(struct rpc_clnt * clnt,struct rpc_xprt * xprt) rpc_task_release_xprt() argument 1124 struct rpc_xprt *xprt = task->tk_xprt; rpc_task_release_transport() local 1155 struct rpc_xprt *xprt; rpc_task_get_first_xprt() local 1396 struct rpc_xprt *xprt; rpc_peeraddr() local 1423 struct rpc_xprt *xprt; rpc_peeraddr2str() local 1562 struct rpc_xprt *xprt; rpc_localaddr() local 1587 struct rpc_xprt *xprt; rpc_setbufsize() local 1639 struct rpc_xprt *xprt; rpc_max_bc_payload() local 1652 struct rpc_xprt *xprt; rpc_num_bc_slots() local 1886 struct rpc_xprt *xprt = req->rq_xprt; call_allocate() local 2040 struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; call_bind() local 2065 struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; call_bind_status() local 2145 struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; call_connect() local 2175 struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; call_connect_status() local 2856 rpc_call_null_helper(struct rpc_clnt * clnt,struct rpc_xprt * xprt,struct rpc_cred * cred,int flags,const struct rpc_call_ops * ops,void * data) rpc_call_null_helper() argument 2922 struct rpc_xprt *xprt; global() member 2956 rpc_clnt_test_and_add_xprt(struct rpc_clnt * clnt,struct rpc_xprt_switch * xps,struct rpc_xprt * xprt,void * in_max_connect) rpc_clnt_test_and_add_xprt() argument 2997 rpc_clnt_add_xprt_helper(struct rpc_clnt * clnt,struct rpc_xprt * xprt,struct rpc_add_xprt_test * data) rpc_clnt_add_xprt_helper() argument 3040 rpc_clnt_setup_test_and_add_xprt(struct rpc_clnt * clnt,struct rpc_xprt_switch * xps,struct rpc_xprt * xprt,void * data) rpc_clnt_setup_test_and_add_xprt() argument 3090 struct rpc_xprt *xprt; rpc_clnt_add_xprt() local 3147 rpc_xprt_probe_trunked(struct rpc_clnt * clnt,struct rpc_xprt * xprt,struct rpc_add_xprt_test * data) rpc_xprt_probe_trunked() argument 3187 struct rpc_xprt *xprt = xprt_iter_get_next(&xpi); rpc_clnt_probe_trunked_xprts() local 3202 rpc_xprt_offline(struct rpc_clnt * clnt,struct rpc_xprt * xprt,void * data) rpc_xprt_offline() argument 3254 rpc_xprt_set_connect_timeout(struct rpc_clnt * clnt,struct rpc_xprt * xprt,void * data) rpc_xprt_set_connect_timeout() argument 3281 rpc_clnt_xprt_set_online(struct rpc_clnt * clnt,struct rpc_xprt * xprt) rpc_clnt_xprt_set_online() argument 3290 rpc_clnt_xprt_switch_add_xprt(struct rpc_clnt * clnt,struct rpc_xprt * xprt) rpc_clnt_xprt_switch_add_xprt() argument 3305 rpc_clnt_xprt_switch_remove_xprt(struct rpc_clnt * clnt,struct rpc_xprt * xprt) rpc_clnt_xprt_switch_remove_xprt() argument 3380 rpc_clnt_swap_activate_callback(struct rpc_clnt * clnt,struct rpc_xprt * xprt,void * dummy) rpc_clnt_swap_activate_callback() argument 3400 rpc_clnt_swap_deactivate_callback(struct rpc_clnt * clnt,struct rpc_xprt * xprt,void * dummy) rpc_clnt_swap_deactivate_callback() argument [all...] |
H A D | debugfs.c | 120 static int do_xprt_debugfs(struct rpc_clnt *clnt, struct rpc_xprt *xprt, void *numv) in do_xprt_debugfs() argument 127 if (IS_ERR_OR_NULL(xprt->debugfs)) in do_xprt_debugfs() 130 xprt->debugfs->d_name.name); in do_xprt_debugfs() 176 struct rpc_xprt *xprt = f->private; in xprt_info_show() local 178 seq_printf(f, "netid: %s\n", xprt->address_strings[RPC_DISPLAY_NETID]); in xprt_info_show() 179 seq_printf(f, "addr: %s\n", xprt->address_strings[RPC_DISPLAY_ADDR]); in xprt_info_show() 180 seq_printf(f, "port: %s\n", xprt->address_strings[RPC_DISPLAY_PORT]); in xprt_info_show() 181 seq_printf(f, "state: 0x%lx\n", xprt->state); in xprt_info_show() 189 struct rpc_xprt *xprt = inode->i_private; in xprt_info_open() local 191 ret = single_open(filp, xprt_info_show, xprt); in xprt_info_open() [all …]
|
H A D | svcsock.c | 61 #include <linux/sunrpc/xprt.h> 127 * @xprt: the transport which owned the context 131 static void svc_tcp_release_ctxt(struct svc_xprt *xprt, void *ctxt) in svc_tcp_release_ctxt() argument 137 * @xprt: the transport which owned the context 141 static void svc_udp_release_ctxt(struct svc_xprt *xprt, void *ctxt) in svc_udp_release_ctxt() argument 399 static int svc_tcp_has_wspace(struct svc_xprt *xprt) in svc_tcp_has_wspace() argument 401 struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); in svc_tcp_has_wspace() 403 if (test_bit(XPT_LISTENER, &xprt->xpt_flags)) in svc_tcp_has_wspace() 408 static void svc_tcp_kill_temp_xprt(struct svc_xprt *xprt) in svc_tcp_kill_temp_xprt() argument 410 struct svc_sock *svsk = container_of(xprt, struc in svc_tcp_kill_temp_xprt() 428 struct svc_xprt *xprt = data; svc_tcp_handshake_done() local 445 svc_tcp_handshake(struct svc_xprt * xprt) svc_tcp_handshake() argument 688 struct svc_xprt *xprt = rqstp->rq_xprt; svc_udp_sendto() local 739 svc_udp_has_wspace(struct svc_xprt * xprt) svc_udp_has_wspace() argument 757 svc_udp_accept(struct svc_xprt * xprt) svc_udp_accept() argument 763 svc_udp_kill_temp_xprt(struct svc_xprt * xprt) svc_udp_kill_temp_xprt() argument 880 svc_tcp_accept(struct svc_xprt * xprt) svc_tcp_accept() argument 1256 struct svc_xprt *xprt = rqstp->rq_xprt; svc_tcp_sendto() local 1575 svc_sock_detach(struct svc_xprt * xprt) svc_sock_detach() argument 1592 svc_tcp_sock_detach(struct svc_xprt * xprt) svc_tcp_sock_detach() argument 1609 svc_sock_free(struct svc_xprt * xprt) svc_sock_free() argument [all...] |
H A D | sysfs.h | 12 struct rpc_xprt *xprt; member 17 struct rpc_xprt *xprt; member 29 struct rpc_xprt *xprt, gfp_t gfp_flags); 30 void rpc_sysfs_xprt_switch_destroy(struct rpc_xprt_switch *xprt); 32 struct rpc_xprt *xprt, gfp_t gfp_flags); 33 void rpc_sysfs_xprt_destroy(struct rpc_xprt *xprt);
|
H A D | rpcb_clnt.c | 148 static void rpcb_wake_rpcbind_waiters(struct rpc_xprt *xprt, int status) in rpcb_wake_rpcbind_waiters() argument 150 xprt_clear_binding(xprt); in rpcb_wake_rpcbind_waiters() 151 rpc_wake_up_status(&xprt->binding, status); in rpcb_wake_rpcbind_waiters() 674 struct rpc_xprt *xprt; in rpcb_getport_async() local 686 xprt = xprt_get(task->tk_xprt); in rpcb_getport_async() 690 rpc_sleep_on_timeout(&xprt->binding, task, in rpcb_getport_async() 691 NULL, jiffies + xprt->bind_timeout); in rpcb_getport_async() 693 if (xprt_test_and_set_binding(xprt)) { in rpcb_getport_async() 694 xprt_put(xprt); in rpcb_getport_async() 699 if (xprt_bound(xprt)) { in rpcb_getport_async() [all …]
|
H A D | svcauth_unix.c | 338 ip_map_cached_get(struct svc_xprt *xprt) in ip_map_cached_get() argument 343 if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) { in ip_map_cached_get() 344 spin_lock(&xprt->xpt_lock); in ip_map_cached_get() 345 ipm = xprt->xpt_auth_cache; in ip_map_cached_get() 347 sn = net_generic(xprt->xpt_net, sunrpc_net_id); in ip_map_cached_get() 354 xprt->xpt_auth_cache = NULL; in ip_map_cached_get() 355 spin_unlock(&xprt->xpt_lock); in ip_map_cached_get() 361 spin_unlock(&xprt->xpt_lock); in ip_map_cached_get() 367 ip_map_cached_put(struct svc_xprt *xprt, struct ip_map *ipm) in ip_map_cached_put() argument 369 if (test_bit(XPT_CACHE_AUTH, &xprt in ip_map_cached_put() 676 struct svc_xprt *xprt = rqstp->rq_xprt; svcauth_unix_set_client() local 835 struct svc_xprt *xprt = rqstp->rq_xprt; svcauth_tls_accept() local [all...] |
/linux/net/sunrpc/xprtrdma/ |
H A D | transport.c | 147 xprt_rdma_format_addresses4(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses4() argument 153 xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses4() 155 xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA; in xprt_rdma_format_addresses4() 159 xprt_rdma_format_addresses6(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses6() argument 165 xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses6() 167 xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA6; in xprt_rdma_format_addresses6() 171 xprt_rdma_format_addresses(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses() argument 177 xprt_rdma_format_addresses4(xprt, sap); in xprt_rdma_format_addresses() 180 xprt_rdma_format_addresses6(xprt, sap); in xprt_rdma_format_addresses() 188 xprt->address_strings[RPC_DISPLAY_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses() [all …]
|
H A D | svc_rdma_backchannel.c | 23 struct rpc_xprt *xprt = sxprt->xpt_bc_xprt; in svc_rdma_handle_bc_reply() local 24 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in svc_rdma_handle_bc_reply() 31 spin_lock(&xprt->queue_lock); in svc_rdma_handle_bc_reply() 32 req = xprt_lookup_rqst(xprt, *rdma_resp); in svc_rdma_handle_bc_reply() 42 spin_unlock(&xprt->queue_lock); in svc_rdma_handle_bc_reply() 49 spin_lock(&xprt->transport_lock); in svc_rdma_handle_bc_reply() 50 xprt->cwnd = credits << RPC_CWNDSHIFT; in svc_rdma_handle_bc_reply() 51 spin_unlock(&xprt->transport_lock); in svc_rdma_handle_bc_reply() 53 spin_lock(&xprt->queue_lock); in svc_rdma_handle_bc_reply() 59 spin_unlock(&xprt->queue_lock); in svc_rdma_handle_bc_reply() [all …]
|
H A D | backchannel.c | 25 int xprt_rdma_bc_setup(struct rpc_xprt *xprt, unsigned int reqs) in xprt_rdma_bc_setup() argument 27 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_setup() 40 size_t xprt_rdma_bc_maxpayload(struct rpc_xprt *xprt) in xprt_rdma_bc_maxpayload() argument 42 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_maxpayload() 51 unsigned int xprt_rdma_bc_max_slots(struct rpc_xprt *xprt) in xprt_rdma_bc_max_slots() argument 99 struct rpc_xprt *xprt = rqst->rq_xprt; in xprt_rdma_bc_send_reply() local 100 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_send_reply() 104 if (!xprt_connected(xprt)) in xprt_rdma_bc_send_reply() 107 if (!xprt_request_get_cong(xprt, rqst)) in xprt_rdma_bc_send_reply() 122 xprt_rdma_close(xprt); in xprt_rdma_bc_send_reply() [all …]
|
H A D | svc_rdma_transport.c | 74 static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt); 75 static void svc_rdma_detach(struct svc_xprt *xprt); 76 static void svc_rdma_free(struct svc_xprt *xprt); 77 static int svc_rdma_has_wspace(struct svc_xprt *xprt); 104 struct svc_xprt *xprt = context; in qp_event_handler() local 106 trace_svcrdma_qp_error(event, (struct sockaddr *)&xprt->xpt_remote); in qp_event_handler() 122 svc_xprt_deferred_close(xprt); in qp_event_handler() 228 * This function creates a new xprt for the new connection and enqueues it on 229 * the accept queue for the listent xprt. When the listen thread is kicked, it 230 * will call the recvfrom method on the listen xprt whic 331 struct svc_xprt *xprt = &rdma->sc_xprt; svc_rdma_cma_handler() local 398 svc_rdma_accept(struct svc_xprt * xprt) svc_rdma_accept() argument 571 svc_rdma_detach(struct svc_xprt * xprt) svc_rdma_detach() argument 614 svc_rdma_free(struct svc_xprt * xprt) svc_rdma_free() argument 623 svc_rdma_has_wspace(struct svc_xprt * xprt) svc_rdma_has_wspace() argument 639 svc_rdma_kill_temp_xprt(struct svc_xprt * xprt) svc_rdma_kill_temp_xprt() argument [all...] |
H A D | rpc_rdma.c | 987 static void __rpcrdma_update_cwnd_locked(struct rpc_xprt *xprt, in __rpcrdma_update_cwnd_locked() argument 992 xprt->cwnd = grant << RPC_CWNDSHIFT; in __rpcrdma_update_cwnd_locked() 997 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_update_cwnd() local 999 spin_lock(&xprt->transport_lock); in rpcrdma_update_cwnd() 1000 __rpcrdma_update_cwnd_locked(xprt, &r_xprt->rx_buf, grant); in rpcrdma_update_cwnd() 1001 spin_unlock(&xprt->transport_lock); in rpcrdma_update_cwnd() 1013 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_reset_cwnd() local 1015 spin_lock(&xprt->transport_lock); in rpcrdma_reset_cwnd() 1016 xprt->cong = 0; in rpcrdma_reset_cwnd() 1017 __rpcrdma_update_cwnd_locked(xprt, &r_xprt->rx_buf, 1); in rpcrdma_reset_cwnd() [all …]
|
H A D | svc_rdma_recvfrom.c | 241 void svc_rdma_release_ctxt(struct svc_xprt *xprt, void *vctxt) in svc_rdma_release_ctxt() argument 245 container_of(xprt, struct svcxprt_rdma, sc_xprt); in svc_rdma_release_ctxt() 745 static bool svc_rdma_is_reverse_direction_reply(struct svc_xprt *xprt, in svc_rdma_is_reverse_direction_reply() argument 750 if (!xprt->xpt_bc_xprt) in svc_rdma_is_reverse_direction_reply() 918 struct svc_xprt *xprt = rqstp->rq_xprt; in svc_rdma_recvfrom() local 920 container_of(xprt, struct svcxprt_rdma, sc_xprt); in svc_rdma_recvfrom() 937 svc_xprt_received(xprt); in svc_rdma_recvfrom() 946 clear_bit(XPT_DATA, &xprt->xpt_flags); in svc_rdma_recvfrom() 950 svc_xprt_received(xprt); in svc_rdma_recvfrom() 966 if (svc_rdma_is_reverse_direction_reply(xprt, ctxt)) in svc_rdma_recvfrom() [all …]
|
/linux/include/linux/sunrpc/ |
H A D | xprt.h | 30 #define RPC_MAXCWND(xprt) ((xprt)->max_reqs << RPC_CWNDSHIFT) argument 31 #define RPCXPRT_CONGESTED(xprt) ((xprt)->cong >= (xprt)->cwnd) argument 138 void (*set_buffer_size)(struct rpc_xprt *xprt, size_t sndsize, size_t rcvsize); 139 int (*reserve_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); 140 void (*release_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); 141 void (*alloc_slot)(struct rpc_xprt *xprt, struct rpc_task *task); 142 void (*free_slot)(struct rpc_xprt *xprt, 145 void (*set_port)(struct rpc_xprt *xprt, unsigned short port); 146 void (*connect)(struct rpc_xprt *xprt, struct rpc_task *task); 147 int (*get_srcaddr)(struct rpc_xprt *xprt, char *buf, [all …]
|
H A D | svc_xprt.h | 26 void (*xpo_release_ctxt)(struct svc_xprt *xprt, void *ctxt); 30 void (*xpo_handshake)(struct svc_xprt *xprt); 128 static inline bool svc_xprt_is_dead(const struct svc_xprt *xprt) in svc_xprt_is_dead() argument 130 return (test_bit(XPT_DEAD, &xprt->xpt_flags) != 0) || in svc_xprt_is_dead() 131 (test_bit(XPT_CLOSE, &xprt->xpt_flags) != 0); in svc_xprt_is_dead() 146 void svc_xprt_received(struct svc_xprt *xprt); 147 void svc_xprt_enqueue(struct svc_xprt *xprt); 148 void svc_xprt_put(struct svc_xprt *xprt); 149 void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt); 150 void svc_xprt_close(struct svc_xprt *xprt); [all …]
|
H A D | bc_xprt.h | 21 struct rpc_rqst *xprt_lookup_bc_request(struct rpc_xprt *xprt, __be32 xid); 30 int xprt_setup_bc(struct rpc_xprt *xprt, unsigned int min_reqs); 31 void xprt_destroy_bc(struct rpc_xprt *xprt, unsigned int max_reqs); 33 unsigned int xprt_bc_max_slots(struct rpc_xprt *xprt); 48 static inline int xprt_setup_backchannel(struct rpc_xprt *xprt, in xprt_setup_backchannel() argument 54 static inline void xprt_destroy_backchannel(struct rpc_xprt *xprt, in xprt_destroy_backchannel() argument
|
H A D | xprtmultipath.h | 47 extern struct rpc_xprt_switch *xprt_switch_alloc(struct rpc_xprt *xprt, 56 struct rpc_xprt *xprt); 58 struct rpc_xprt *xprt, bool offline);
|
H A D | clnt.h | 159 struct rpc_xprt *xprt, 193 struct rpc_xprt *xprt); 234 struct rpc_xprt *xprt, 260 void rpc_clnt_xprt_set_online(struct rpc_clnt *clnt, struct rpc_xprt *xprt);
|
/linux/include/trace/events/ |
H A D | sunrpc.h | 171 const struct rpc_xprt *xprt, 175 TP_ARGS(clnt, xprt, args), 182 __string(server, xprt->servername) 183 __string(addr, xprt->address_strings[RPC_DISPLAY_ADDR]) 184 __string(port, xprt->address_strings[RPC_DISPLAY_PORT]) 845 struct rpc_xprt *xprt, 849 TP_ARGS(xprt, socket), 890 struct rpc_xprt *xprt, \ 893 TP_ARGS(xprt, socket)) 898 struct rpc_xprt *xprt, [all...] |
/linux/fs/nfsd/ |
H A D | nfsctl.c | 741 struct svc_xprt *xprt; in __write_ports_addxprt() local 770 xprt = svc_find_xprt(serv, transport, net, PF_INET, port); in __write_ports_addxprt() 771 if (xprt != NULL) { in __write_ports_addxprt() 772 svc_xprt_close(xprt); in __write_ports_addxprt() 773 svc_xprt_put(xprt); in __write_ports_addxprt() 1957 struct svc_xprt *xprt, *tmp; in nfsd_nl_listener_set_doit() local 2006 list_for_each_entry_safe(xprt, tmp, &permsocks, xpt_list) { in nfsd_nl_listener_set_doit() 2008 if (WARN_ON_ONCE(xprt->xpt_net != net)) { in nfsd_nl_listener_set_doit() 2009 list_move(&xprt->xpt_list, &serv->sv_permsocks); in nfsd_nl_listener_set_doit() 2014 if (!strcmp(xprt->xpt_class->xcl_name, xcl_name) && in nfsd_nl_listener_set_doit() [all …]
|