/Linux-v4.19/net/sunrpc/ |
D | xprt.c | 68 static void xprt_init(struct rpc_xprt *xprt, struct net *net); 69 static __be32 xprt_alloc_xid(struct rpc_xprt *xprt); 73 static void xprt_destroy(struct rpc_xprt *xprt); 183 int xprt_reserve_xprt(struct rpc_xprt *xprt, struct rpc_task *task) in xprt_reserve_xprt() argument 188 if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) { in xprt_reserve_xprt() 189 if (task == xprt->snd_task) in xprt_reserve_xprt() 193 xprt->snd_task = task; in xprt_reserve_xprt() 201 task->tk_pid, xprt); in xprt_reserve_xprt() 210 rpc_sleep_on_priority(&xprt->sending, task, NULL, priority); in xprt_reserve_xprt() 215 static void xprt_clear_locked(struct rpc_xprt *xprt) in xprt_clear_locked() argument [all …]
|
D | xprtsock.c | 57 static void xs_close(struct rpc_xprt *xprt); 58 static void xs_tcp_set_socket_timeouts(struct rpc_xprt *xprt, 228 static inline struct sockaddr *xs_addr(struct rpc_xprt *xprt) in xs_addr() argument 230 return (struct sockaddr *) &xprt->addr; in xs_addr() 233 static inline struct sockaddr_un *xs_addr_un(struct rpc_xprt *xprt) in xs_addr_un() argument 235 return (struct sockaddr_un *) &xprt->addr; in xs_addr_un() 238 static inline struct sockaddr_in *xs_addr_in(struct rpc_xprt *xprt) in xs_addr_in() argument 240 return (struct sockaddr_in *) &xprt->addr; in xs_addr_in() 243 static inline struct sockaddr_in6 *xs_addr_in6(struct rpc_xprt *xprt) in xs_addr_in6() argument 245 return (struct sockaddr_in6 *) &xprt->addr; in xs_addr_in6() [all …]
|
D | svc_xprt.c | 28 static struct svc_deferred_req *svc_deferred_dequeue(struct svc_xprt *xprt); 32 static void svc_delete_xprt(struct svc_xprt *xprt); 134 struct svc_xprt *xprt = in svc_xprt_free() local 136 struct module *owner = xprt->xpt_class->xcl_owner; in svc_xprt_free() 137 if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) in svc_xprt_free() 138 svcauth_unix_info_release(xprt); in svc_xprt_free() 139 put_net(xprt->xpt_net); in svc_xprt_free() 141 if (xprt->xpt_bc_xprt) in svc_xprt_free() 142 xprt_put(xprt->xpt_bc_xprt); in svc_xprt_free() 143 if (xprt->xpt_bc_xps) in svc_xprt_free() [all …]
|
D | backchannel_rqst.c | 38 static inline int xprt_need_to_requeue(struct rpc_xprt *xprt) in xprt_need_to_requeue() argument 40 return xprt->bc_alloc_count < atomic_read(&xprt->bc_free_slots); in xprt_need_to_requeue() 43 static inline void xprt_inc_alloc_count(struct rpc_xprt *xprt, unsigned int n) in xprt_inc_alloc_count() argument 45 atomic_add(n, &xprt->bc_free_slots); in xprt_inc_alloc_count() 46 xprt->bc_alloc_count += n; in xprt_inc_alloc_count() 49 static inline int xprt_dec_alloc_count(struct rpc_xprt *xprt, unsigned int n) in xprt_dec_alloc_count() argument 51 atomic_sub(n, &xprt->bc_free_slots); in xprt_dec_alloc_count() 52 return xprt->bc_alloc_count -= n; in xprt_dec_alloc_count() 84 struct rpc_rqst *xprt_alloc_bc_req(struct rpc_xprt *xprt, gfp_t gfp_flags) in xprt_alloc_bc_req() argument 93 req->rq_xprt = xprt; in xprt_alloc_bc_req() [all …]
|
D | xprtmultipath.c | 30 struct rpc_xprt *xprt) in xprt_switch_add_xprt_locked() argument 32 if (unlikely(xprt_get(xprt) == NULL)) in xprt_switch_add_xprt_locked() 34 list_add_tail_rcu(&xprt->xprt_switch, &xps->xps_xprt_list); in xprt_switch_add_xprt_locked() 37 xps->xps_net = xprt->xprt_net; in xprt_switch_add_xprt_locked() 49 struct rpc_xprt *xprt) in rpc_xprt_switch_add_xprt() argument 51 if (xprt == NULL) in rpc_xprt_switch_add_xprt() 54 if ((xps->xps_net == xprt->xprt_net || xps->xps_net == NULL) && in rpc_xprt_switch_add_xprt() 55 !rpc_xprt_switch_has_addr(xps, (struct sockaddr *)&xprt->addr)) in rpc_xprt_switch_add_xprt() 56 xprt_switch_add_xprt_locked(xps, xprt); in rpc_xprt_switch_add_xprt() 61 struct rpc_xprt *xprt) in xprt_switch_remove_xprt_locked() argument [all …]
|
D | debugfs.c | 126 struct rpc_xprt *xprt; in rpc_clnt_debugfs_register() local 147 xprt = rcu_dereference(clnt->cl_xprt); in rpc_clnt_debugfs_register() 149 if (!xprt->debugfs) { in rpc_clnt_debugfs_register() 154 xprt->debugfs->d_name.name); in rpc_clnt_debugfs_register() 179 struct rpc_xprt *xprt = f->private; in xprt_info_show() local 181 seq_printf(f, "netid: %s\n", xprt->address_strings[RPC_DISPLAY_NETID]); in xprt_info_show() 182 seq_printf(f, "addr: %s\n", xprt->address_strings[RPC_DISPLAY_ADDR]); in xprt_info_show() 183 seq_printf(f, "port: %s\n", xprt->address_strings[RPC_DISPLAY_PORT]); in xprt_info_show() 184 seq_printf(f, "state: 0x%lx\n", xprt->state); in xprt_info_show() 192 struct rpc_xprt *xprt = inode->i_private; in xprt_info_open() local [all …]
|
D | clnt.c | 267 struct rpc_xprt *xprt, in rpc_clnt_set_transport() argument 276 if (!xprt_bound(xprt)) in rpc_clnt_set_transport() 280 rcu_assign_pointer(clnt->cl_xprt, xprt); in rpc_clnt_set_transport() 362 struct rpc_xprt *xprt, in rpc_new_client() argument 374 program->name, args->servername, xprt); in rpc_new_client() 411 timeout = xprt->timeout; in rpc_new_client() 418 rpc_clnt_set_transport(clnt, xprt, timeout); in rpc_new_client() 449 xprt_put(xprt); in rpc_new_client() 454 struct rpc_xprt *xprt) in rpc_create_xprt() argument 464 xps = xprt_switch_alloc(xprt, GFP_KERNEL); in rpc_create_xprt() [all …]
|
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() 677 struct rpc_xprt *xprt; in rpcb_getport_async() local 689 xprt = xprt_get(task->tk_xprt); in rpcb_getport_async() 693 xprt->servername, clnt->cl_prog, clnt->cl_vers, xprt->prot); in rpcb_getport_async() 697 rpc_sleep_on(&xprt->binding, task, NULL); in rpcb_getport_async() 699 if (xprt_test_and_set_binding(xprt)) { in rpcb_getport_async() 702 xprt_put(xprt); in rpcb_getport_async() 707 if (xprt_bound(xprt)) { in rpcb_getport_async() [all …]
|
D | svcsock.c | 77 static void svc_bc_sock_free(struct svc_xprt *xprt); 440 static int svc_tcp_has_wspace(struct svc_xprt *xprt) in svc_tcp_has_wspace() argument 442 struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); in svc_tcp_has_wspace() 444 if (test_bit(XPT_LISTENER, &xprt->xpt_flags)) in svc_tcp_has_wspace() 449 static void svc_tcp_kill_temp_xprt(struct svc_xprt *xprt) in svc_tcp_kill_temp_xprt() argument 458 svsk = container_of(xprt, struct svc_sock, sk_xprt); in svc_tcp_kill_temp_xprt() 649 static int svc_udp_has_wspace(struct svc_xprt *xprt) in svc_udp_has_wspace() argument 651 struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); in svc_udp_has_wspace() 652 struct svc_serv *serv = xprt->xpt_server; in svc_udp_has_wspace() 667 static struct svc_xprt *svc_udp_accept(struct svc_xprt *xprt) in svc_udp_accept() argument [all …]
|
D | svcauth_unix.c | 341 ip_map_cached_get(struct svc_xprt *xprt) in ip_map_cached_get() argument 346 if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) { in ip_map_cached_get() 347 spin_lock(&xprt->xpt_lock); in ip_map_cached_get() 348 ipm = xprt->xpt_auth_cache; in ip_map_cached_get() 350 sn = net_generic(xprt->xpt_net, sunrpc_net_id); in ip_map_cached_get() 357 xprt->xpt_auth_cache = NULL; in ip_map_cached_get() 358 spin_unlock(&xprt->xpt_lock); in ip_map_cached_get() 364 spin_unlock(&xprt->xpt_lock); in ip_map_cached_get() 370 ip_map_cached_put(struct svc_xprt *xprt, struct ip_map *ipm) in ip_map_cached_put() argument 372 if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) { in ip_map_cached_put() [all …]
|
D | stats.c | 240 struct rpc_xprt *xprt; in rpc_clnt_show_stats() local 251 xprt = rcu_dereference(clnt->cl_xprt); in rpc_clnt_show_stats() 252 if (xprt) in rpc_clnt_show_stats() 253 xprt->ops->print_stats(xprt, seq); in rpc_clnt_show_stats()
|
/Linux-v4.19/include/linux/sunrpc/ |
D | xprt.h | 32 #define RPC_MAXCWND(xprt) ((xprt)->max_reqs << RPC_CWNDSHIFT) argument 33 #define RPCXPRT_CONGESTED(xprt) ((xprt)->cong >= (xprt)->cwnd) argument 125 void (*set_buffer_size)(struct rpc_xprt *xprt, size_t sndsize, size_t rcvsize); 126 int (*reserve_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); 127 void (*release_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); 128 void (*alloc_slot)(struct rpc_xprt *xprt, struct rpc_task *task); 129 void (*free_slot)(struct rpc_xprt *xprt, 132 void (*set_port)(struct rpc_xprt *xprt, unsigned short port); 133 void (*connect)(struct rpc_xprt *xprt, struct rpc_task *task); 138 void (*timer)(struct rpc_xprt *xprt, struct rpc_task *task); [all …]
|
D | svc_xprt.h | 125 void svc_xprt_do_enqueue(struct svc_xprt *xprt); 126 void svc_xprt_enqueue(struct svc_xprt *xprt); 127 void svc_xprt_put(struct svc_xprt *xprt); 128 void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt); 129 void svc_close_xprt(struct svc_xprt *xprt); 136 void svc_add_new_perm_xprt(struct svc_serv *serv, struct svc_xprt *xprt); 139 static inline void svc_xprt_get(struct svc_xprt *xprt) in svc_xprt_get() argument 141 kref_get(&xprt->xpt_ref); in svc_xprt_get() 143 static inline void svc_xprt_set_local(struct svc_xprt *xprt, in svc_xprt_set_local() argument 147 memcpy(&xprt->xpt_local, sa, salen); in svc_xprt_set_local() [all …]
|
D | bc_xprt.h | 35 struct rpc_rqst *xprt_lookup_bc_request(struct rpc_xprt *xprt, __be32 xid); 42 int xprt_setup_bc(struct rpc_xprt *xprt, unsigned int min_reqs); 43 void xprt_destroy_bc(struct rpc_xprt *xprt, unsigned int max_reqs); 56 static inline int xprt_setup_backchannel(struct rpc_xprt *xprt, in xprt_setup_backchannel() argument
|
D | xprtmultipath.h | 41 extern struct rpc_xprt_switch *xprt_switch_alloc(struct rpc_xprt *xprt, 50 struct rpc_xprt *xprt); 52 struct rpc_xprt *xprt);
|
D | debug.h | 118 rpc_xprt_debugfs_register(struct rpc_xprt *xprt) in rpc_xprt_debugfs_register() argument 124 rpc_xprt_debugfs_unregister(struct rpc_xprt *xprt) in rpc_xprt_debugfs_unregister() argument
|
/Linux-v4.19/net/sunrpc/xprtrdma/ |
D | transport.c | 161 xprt_rdma_format_addresses4(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses4() argument 167 xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses4() 169 xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA; in xprt_rdma_format_addresses4() 173 xprt_rdma_format_addresses6(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses6() argument 179 xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses6() 181 xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA6; in xprt_rdma_format_addresses6() 185 xprt_rdma_format_addresses(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses() argument 191 xprt_rdma_format_addresses4(xprt, sap); in xprt_rdma_format_addresses() 194 xprt_rdma_format_addresses6(xprt, sap); in xprt_rdma_format_addresses() 202 xprt->address_strings[RPC_DISPLAY_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses() [all …]
|
D | svc_rdma_backchannel.c | 29 int svc_rdma_handle_bc_reply(struct rpc_xprt *xprt, __be32 *rdma_resp, in svc_rdma_handle_bc_reply() argument 32 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in svc_rdma_handle_bc_reply() 59 spin_lock(&xprt->recv_lock); in svc_rdma_handle_bc_reply() 60 req = xprt_lookup_rqst(xprt, xid); in svc_rdma_handle_bc_reply() 76 spin_lock_bh(&xprt->transport_lock); in svc_rdma_handle_bc_reply() 77 cwnd = xprt->cwnd; in svc_rdma_handle_bc_reply() 78 xprt->cwnd = credits << RPC_CWNDSHIFT; in svc_rdma_handle_bc_reply() 79 if (xprt->cwnd > cwnd) in svc_rdma_handle_bc_reply() 81 spin_unlock_bh(&xprt->transport_lock); in svc_rdma_handle_bc_reply() 89 spin_unlock(&xprt->recv_lock); in svc_rdma_handle_bc_reply() [all …]
|
D | backchannel.c | 39 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_bc_setup_reqs() local 53 rqst->rq_xprt = xprt; in rpcrdma_bc_setup_reqs() 57 spin_lock_bh(&xprt->bc_pa_lock); in rpcrdma_bc_setup_reqs() 58 list_add(&rqst->rq_bc_pa_list, &xprt->bc_pa_list); in rpcrdma_bc_setup_reqs() 59 spin_unlock_bh(&xprt->bc_pa_lock); in rpcrdma_bc_setup_reqs() 83 int xprt_rdma_bc_setup(struct rpc_xprt *xprt, unsigned int reqs) in xprt_rdma_bc_setup() argument 85 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_setup() 110 xprt_rdma_bc_destroy(xprt, reqs); in xprt_rdma_bc_setup() 143 size_t xprt_rdma_bc_maxpayload(struct rpc_xprt *xprt) in xprt_rdma_bc_maxpayload() argument 145 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_maxpayload() [all …]
|
D | svc_rdma_transport.c | 73 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); 130 struct svc_xprt *xprt; in svc_rdma_bc_create() local 135 xprt = &cma_xprt->sc_xprt; in svc_rdma_bc_create() 137 svc_xprt_init(net, &svc_rdma_bc_class, xprt, serv); in svc_rdma_bc_create() 138 set_bit(XPT_CONG_CTRL, &xprt->xpt_flags); in svc_rdma_bc_create() 139 serv->sv_bc_xprt = xprt; in svc_rdma_bc_create() 141 dprintk("svcrdma: %s(%p)\n", __func__, xprt); in svc_rdma_bc_create() [all …]
|
D | svc_rdma_recvfrom.c | 597 static void svc_rdma_send_error(struct svcxprt_rdma *xprt, in svc_rdma_send_error() argument 605 ctxt = svc_rdma_send_ctxt_get(xprt); in svc_rdma_send_error() 612 *p++ = xprt->sc_fc_credits; in svc_rdma_send_error() 626 svc_rdma_sync_reply_hdr(xprt, ctxt, length); in svc_rdma_send_error() 629 ret = svc_rdma_send(xprt, &ctxt->sc_send_wr); in svc_rdma_send_error() 631 svc_rdma_send_ctxt_put(xprt, ctxt); in svc_rdma_send_error() 639 static bool svc_rdma_is_backchannel_reply(struct svc_xprt *xprt, in svc_rdma_is_backchannel_reply() argument 644 if (!xprt->xpt_bc_xprt) in svc_rdma_is_backchannel_reply() 700 struct svc_xprt *xprt = rqstp->rq_xprt; in svc_rdma_recvfrom() local 702 container_of(xprt, struct svcxprt_rdma, sc_xprt); in svc_rdma_recvfrom() [all …]
|
D | verbs.c | 225 struct rpcrdma_xprt *xprt = id->context; in rpcrdma_conn_upcall() local 226 struct rpcrdma_ia *ia = &xprt->rx_ia; in rpcrdma_conn_upcall() 227 struct rpcrdma_ep *ep = &xprt->rx_ep; in rpcrdma_conn_upcall() 230 trace_xprtrdma_conn_upcall(xprt, event); in rpcrdma_conn_upcall() 249 rpcrdma_addrstr(xprt), rpcrdma_portstr(xprt)); in rpcrdma_conn_upcall() 253 xprt_force_disconnect(&xprt->rx_xprt); in rpcrdma_conn_upcall() 261 ++xprt->rx_xprt.connect_cookie; in rpcrdma_conn_upcall() 263 rpcrdma_update_connect_private(xprt, &event->param.conn); in rpcrdma_conn_upcall() 273 rpcrdma_addrstr(xprt), rpcrdma_portstr(xprt), in rpcrdma_conn_upcall() 280 ++xprt->rx_xprt.connect_cookie; in rpcrdma_conn_upcall() [all …]
|
D | rpc_rdma.c | 1217 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_complete_rqst() local 1222 xprt->reestablish_timeout = 0; in rpcrdma_complete_rqst() 1241 spin_lock(&xprt->recv_lock); in rpcrdma_complete_rqst() 1242 cwnd = xprt->cwnd; in rpcrdma_complete_rqst() 1243 xprt->cwnd = r_xprt->rx_buf.rb_credits << RPC_CWNDSHIFT; in rpcrdma_complete_rqst() 1244 if (xprt->cwnd > cwnd) in rpcrdma_complete_rqst() 1249 spin_unlock(&xprt->recv_lock); in rpcrdma_complete_rqst() 1316 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_reply_handler() local 1348 spin_lock(&xprt->recv_lock); in rpcrdma_reply_handler() 1349 rqst = xprt_lookup_rqst(xprt, rep->rr_xid); in rpcrdma_reply_handler() [all …]
|
/Linux-v4.19/include/trace/events/ |
D | sunrpc.h | 307 struct rpc_xprt *xprt, 311 TP_ARGS(xprt, socket), 318 xprt->address_strings[RPC_DISPLAY_ADDR]) 320 xprt->address_strings[RPC_DISPLAY_PORT]) 329 xprt->address_strings[RPC_DISPLAY_ADDR]); 331 xprt->address_strings[RPC_DISPLAY_PORT]); 347 struct rpc_xprt *xprt, \ 350 TP_ARGS(xprt, socket)) 355 struct rpc_xprt *xprt, 360 TP_ARGS(xprt, socket, error), [all …]
|
/Linux-v4.19/fs/nfs/ |
D | callback.c | 141 static inline void nfs_callback_bc_serv(u32 minorversion, struct rpc_xprt *xprt, in nfs_callback_bc_serv() argument 149 xprt->bc_serv = serv; in nfs_callback_bc_serv() 152 static inline void nfs_callback_bc_serv(u32 minorversion, struct rpc_xprt *xprt, in nfs_callback_bc_serv() argument 158 static int nfs_callback_start_svc(int minorversion, struct rpc_xprt *xprt, in nfs_callback_start_svc() argument 164 nfs_callback_bc_serv(minorversion, xprt, serv); in nfs_callback_start_svc() 193 struct net *net, struct rpc_xprt *xprt) in nfs_callback_up_net() argument 212 else if (xprt->ops->bc_up) in nfs_callback_up_net() 213 ret = xprt->ops->bc_up(serv, net); in nfs_callback_up_net() 309 int nfs_callback_up(u32 minorversion, struct rpc_xprt *xprt) in nfs_callback_up() argument 314 struct net *net = xprt->xprt_net; in nfs_callback_up() [all …]
|