Home
last modified time | relevance | path

Searched refs:xprt (Results 1 – 23 of 23) sorted by relevance

/net/sunrpc/
Dxprt.c70 static void xprt_init(struct rpc_xprt *xprt, struct net *net);
71 static __be32 xprt_alloc_xid(struct rpc_xprt *xprt);
72 static void xprt_destroy(struct rpc_xprt *xprt);
182 static void xprt_clear_locked(struct rpc_xprt *xprt) in xprt_clear_locked() argument
184 xprt->snd_task = NULL; in xprt_clear_locked()
185 if (!test_bit(XPRT_CLOSE_WAIT, &xprt->state)) { in xprt_clear_locked()
187 clear_bit(XPRT_LOCKED, &xprt->state); in xprt_clear_locked()
190 queue_work(xprtiod_workqueue, &xprt->task_cleanup); in xprt_clear_locked()
202 int xprt_reserve_xprt(struct rpc_xprt *xprt, struct rpc_task *task) in xprt_reserve_xprt() argument
206 if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) { in xprt_reserve_xprt()
[all …]
Dxprtsock.c59 static void xs_close(struct rpc_xprt *xprt);
60 static void xs_tcp_set_socket_timeouts(struct rpc_xprt *xprt,
226 static inline struct sockaddr *xs_addr(struct rpc_xprt *xprt) in xs_addr() argument
228 return (struct sockaddr *) &xprt->addr; in xs_addr()
231 static inline struct sockaddr_un *xs_addr_un(struct rpc_xprt *xprt) in xs_addr_un() argument
233 return (struct sockaddr_un *) &xprt->addr; in xs_addr_un()
236 static inline struct sockaddr_in *xs_addr_in(struct rpc_xprt *xprt) in xs_addr_in() argument
238 return (struct sockaddr_in *) &xprt->addr; in xs_addr_in()
241 static inline struct sockaddr_in6 *xs_addr_in6(struct rpc_xprt *xprt) in xs_addr_in6() argument
243 return (struct sockaddr_in6 *) &xprt->addr; in xs_addr_in6()
[all …]
Dsvc_xprt.c29 static struct svc_deferred_req *svc_deferred_dequeue(struct svc_xprt *xprt);
33 static void svc_delete_xprt(struct svc_xprt *xprt);
135 struct svc_xprt *xprt = in svc_xprt_free() local
137 struct module *owner = xprt->xpt_class->xcl_owner; in svc_xprt_free()
138 if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) in svc_xprt_free()
139 svcauth_unix_info_release(xprt); in svc_xprt_free()
140 put_cred(xprt->xpt_cred); in svc_xprt_free()
141 put_net(xprt->xpt_net); in svc_xprt_free()
143 if (xprt->xpt_bc_xprt) in svc_xprt_free()
144 xprt_put(xprt->xpt_bc_xprt); in svc_xprt_free()
[all …]
Dbackchannel_rqst.c36 unsigned int xprt_bc_max_slots(struct rpc_xprt *xprt) in xprt_bc_max_slots() argument
45 static inline int xprt_need_to_requeue(struct rpc_xprt *xprt) in xprt_need_to_requeue() argument
47 return xprt->bc_alloc_count < xprt->bc_alloc_max; in xprt_need_to_requeue()
79 struct rpc_rqst *xprt_alloc_bc_req(struct rpc_xprt *xprt, gfp_t gfp_flags) in xprt_alloc_bc_req() argument
88 req->rq_xprt = xprt; in xprt_alloc_bc_req()
127 int xprt_setup_backchannel(struct rpc_xprt *xprt, unsigned int min_reqs) in xprt_setup_backchannel() argument
129 if (!xprt->ops->bc_setup) in xprt_setup_backchannel()
131 return xprt->ops->bc_setup(xprt, min_reqs); in xprt_setup_backchannel()
135 int xprt_setup_bc(struct rpc_xprt *xprt, unsigned int min_reqs) in xprt_setup_bc() argument
157 req = xprt_alloc_bc_req(xprt, GFP_KERNEL); in xprt_setup_bc()
[all …]
Dxprtmultipath.c30 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()
50 struct rpc_xprt *xprt) in rpc_xprt_switch_add_xprt() argument
52 if (xprt == NULL) in rpc_xprt_switch_add_xprt()
55 if (xps->xps_net == xprt->xprt_net || xps->xps_net == NULL) 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
63 if (unlikely(xprt == NULL)) in xprt_switch_remove_xprt_locked()
[all …]
Dclnt.c268 struct rpc_xprt *xprt, in rpc_clnt_set_transport() argument
277 if (!xprt_bound(xprt)) in rpc_clnt_set_transport()
281 rcu_assign_pointer(clnt->cl_xprt, xprt); in rpc_clnt_set_transport()
363 struct rpc_xprt *xprt, in rpc_new_client() argument
375 program->name, args->servername, xprt); in rpc_new_client()
413 timeout = xprt->timeout; in rpc_new_client()
420 rpc_clnt_set_transport(clnt, xprt, timeout); in rpc_new_client()
452 xprt_put(xprt); in rpc_new_client()
457 struct rpc_xprt *xprt) in rpc_create_xprt() argument
467 xps = xprt_switch_alloc(xprt, GFP_KERNEL); in rpc_create_xprt()
[all …]
Ddebugfs.c120 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 …]
Drpcb_clnt.c149 static void rpcb_wake_rpcbind_waiters(struct rpc_xprt *xprt, int status) in rpcb_wake_rpcbind_waiters() argument
151 xprt_clear_binding(xprt); in rpcb_wake_rpcbind_waiters()
152 rpc_wake_up_status(&xprt->binding, status); in rpcb_wake_rpcbind_waiters()
682 struct rpc_xprt *xprt; in rpcb_getport_async() local
694 xprt = xprt_get(task->tk_xprt); in rpcb_getport_async()
698 xprt->servername, clnt->cl_prog, clnt->cl_vers, xprt->prot); in rpcb_getport_async()
702 rpc_sleep_on_timeout(&xprt->binding, task, in rpcb_getport_async()
703 NULL, jiffies + xprt->bind_timeout); in rpcb_getport_async()
705 if (xprt_test_and_set_binding(xprt)) { in rpcb_getport_async()
708 xprt_put(xprt); in rpcb_getport_async()
[all …]
Dsvcauth_unix.c349 ip_map_cached_get(struct svc_xprt *xprt) in ip_map_cached_get() argument
354 if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) { in ip_map_cached_get()
355 spin_lock(&xprt->xpt_lock); in ip_map_cached_get()
356 ipm = xprt->xpt_auth_cache; in ip_map_cached_get()
358 sn = net_generic(xprt->xpt_net, sunrpc_net_id); in ip_map_cached_get()
365 xprt->xpt_auth_cache = NULL; in ip_map_cached_get()
366 spin_unlock(&xprt->xpt_lock); in ip_map_cached_get()
372 spin_unlock(&xprt->xpt_lock); in ip_map_cached_get()
378 ip_map_cached_put(struct svc_xprt *xprt, struct ip_map *ipm) in ip_map_cached_put() argument
380 if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) { in ip_map_cached_put()
[all …]
Dsvcsock.c413 static int svc_tcp_has_wspace(struct svc_xprt *xprt) in svc_tcp_has_wspace() argument
415 struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); in svc_tcp_has_wspace()
417 if (test_bit(XPT_LISTENER, &xprt->xpt_flags)) in svc_tcp_has_wspace()
422 static void svc_tcp_kill_temp_xprt(struct svc_xprt *xprt) in svc_tcp_kill_temp_xprt() argument
431 svsk = container_of(xprt, struct svc_sock, sk_xprt); in svc_tcp_kill_temp_xprt()
616 static int svc_udp_has_wspace(struct svc_xprt *xprt) in svc_udp_has_wspace() argument
618 struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); in svc_udp_has_wspace()
619 struct svc_serv *serv = xprt->xpt_server; in svc_udp_has_wspace()
634 static struct svc_xprt *svc_udp_accept(struct svc_xprt *xprt) in svc_udp_accept() argument
640 static void svc_udp_kill_temp_xprt(struct svc_xprt *xprt) in svc_udp_kill_temp_xprt() argument
[all …]
Dstats.c243 static int do_print_stats(struct rpc_clnt *clnt, struct rpc_xprt *xprt, void *seqv) in do_print_stats() argument
247 xprt->ops->print_stats(xprt, seq); in do_print_stats()
DMakefile11 sunrpc-y := clnt.o xprt.o socklib.o xprtsock.o sched.o \
/net/sunrpc/xprtrdma/
Dtransport.c160 xprt_rdma_format_addresses4(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses4() argument
166 xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses4()
168 xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA; in xprt_rdma_format_addresses4()
172 xprt_rdma_format_addresses6(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses6() argument
178 xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses6()
180 xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA6; in xprt_rdma_format_addresses6()
184 xprt_rdma_format_addresses(struct rpc_xprt *xprt, struct sockaddr *sap) in xprt_rdma_format_addresses() argument
190 xprt_rdma_format_addresses4(xprt, sap); in xprt_rdma_format_addresses()
193 xprt_rdma_format_addresses6(xprt, sap); in xprt_rdma_format_addresses()
201 xprt->address_strings[RPC_DISPLAY_ADDR] = kstrdup(buf, GFP_KERNEL); in xprt_rdma_format_addresses()
[all …]
Dsvc_rdma_backchannel.c27 int svc_rdma_handle_bc_reply(struct rpc_xprt *xprt, __be32 *rdma_resp, in svc_rdma_handle_bc_reply() argument
30 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in svc_rdma_handle_bc_reply()
56 spin_lock(&xprt->queue_lock); in svc_rdma_handle_bc_reply()
57 req = xprt_lookup_rqst(xprt, xid); in svc_rdma_handle_bc_reply()
67 spin_unlock(&xprt->queue_lock); in svc_rdma_handle_bc_reply()
75 spin_lock(&xprt->transport_lock); in svc_rdma_handle_bc_reply()
76 xprt->cwnd = credits << RPC_CWNDSHIFT; in svc_rdma_handle_bc_reply()
77 spin_unlock(&xprt->transport_lock); in svc_rdma_handle_bc_reply()
79 spin_lock(&xprt->queue_lock); in svc_rdma_handle_bc_reply()
86 spin_unlock(&xprt->queue_lock); in svc_rdma_handle_bc_reply()
[all …]
Dbackchannel.c29 int xprt_rdma_bc_setup(struct rpc_xprt *xprt, unsigned int reqs) in xprt_rdma_bc_setup() argument
31 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_setup()
44 size_t xprt_rdma_bc_maxpayload(struct rpc_xprt *xprt) in xprt_rdma_bc_maxpayload() argument
46 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_maxpayload()
55 unsigned int xprt_rdma_bc_max_slots(struct rpc_xprt *xprt) in xprt_rdma_bc_max_slots() argument
103 struct rpc_xprt *xprt = rqst->rq_xprt; in xprt_rdma_bc_send_reply() local
104 struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); in xprt_rdma_bc_send_reply()
108 if (!xprt_connected(xprt)) in xprt_rdma_bc_send_reply()
111 if (!xprt_request_get_cong(xprt, rqst)) in xprt_rdma_bc_send_reply()
126 xprt_rdma_close(xprt); in xprt_rdma_bc_send_reply()
[all …]
Dsvc_rdma_transport.c73 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);
105 struct svc_xprt *xprt = context; in qp_event_handler() local
107 trace_svcrdma_qp_error(event, (struct sockaddr *)&xprt->xpt_remote); in qp_event_handler()
123 set_bit(XPT_CLOSE, &xprt->xpt_flags); in qp_event_handler()
124 svc_xprt_enqueue(xprt); in qp_event_handler()
270 struct svc_xprt *xprt = &rdma->sc_xprt; in rdma_cma_handler() local
277 svc_xprt_get(xprt); in rdma_cma_handler()
[all …]
Dsvc_rdma_recvfrom.c649 static void svc_rdma_send_error(struct svcxprt_rdma *xprt, in svc_rdma_send_error() argument
657 ctxt = svc_rdma_send_ctxt_get(xprt); in svc_rdma_send_error()
664 *p++ = xprt->sc_fc_credits; in svc_rdma_send_error()
678 svc_rdma_sync_reply_hdr(xprt, ctxt, length); in svc_rdma_send_error()
681 ret = svc_rdma_send(xprt, &ctxt->sc_send_wr); in svc_rdma_send_error()
683 svc_rdma_send_ctxt_put(xprt, ctxt); in svc_rdma_send_error()
691 static bool svc_rdma_is_backchannel_reply(struct svc_xprt *xprt, in svc_rdma_is_backchannel_reply() argument
696 if (!xprt->xpt_bc_xprt) in svc_rdma_is_backchannel_reply()
752 struct svc_xprt *xprt = rqstp->rq_xprt; in svc_rdma_recvfrom() local
754 container_of(xprt, struct svcxprt_rdma, sc_xprt); in svc_rdma_recvfrom()
[all …]
Dverbs.c223 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_cm_event_handler() local
251 xprt_force_disconnect(xprt); in rpcrdma_cm_event_handler()
258 ++xprt->connect_cookie; in rpcrdma_cm_event_handler()
280 xprt_force_disconnect(xprt); in rpcrdma_cm_event_handler()
294 rpcrdma_create_id(struct rpcrdma_xprt *xprt, struct rpcrdma_ia *ia) in rpcrdma_create_id() argument
300 trace_xprtrdma_conn_start(xprt); in rpcrdma_create_id()
304 id = rdma_create_id(xprt->rx_xprt.xprt_net, rpcrdma_cm_event_handler, in rpcrdma_create_id()
305 xprt, RDMA_PS_TCP, IB_QPT_RC); in rpcrdma_create_id()
311 (struct sockaddr *)&xprt->rx_xprt.addr, in rpcrdma_create_id()
317 trace_xprtrdma_conn_tout(xprt); in rpcrdma_create_id()
[all …]
Drpc_rdma.c1260 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_complete_rqst() local
1281 spin_lock(&xprt->queue_lock); in rpcrdma_complete_rqst()
1284 spin_unlock(&xprt->queue_lock); in rpcrdma_complete_rqst()
1315 struct rpc_xprt *xprt = &r_xprt->rx_xprt; in rpcrdma_reply_handler() local
1325 if (xprt->reestablish_timeout) in rpcrdma_reply_handler()
1326 xprt->reestablish_timeout = 0; in rpcrdma_reply_handler()
1348 spin_lock(&xprt->queue_lock); in rpcrdma_reply_handler()
1349 rqst = xprt_lookup_rqst(xprt, rep->rr_xid); in rpcrdma_reply_handler()
1353 spin_unlock(&xprt->queue_lock); in rpcrdma_reply_handler()
1360 spin_lock(&xprt->transport_lock); in rpcrdma_reply_handler()
[all …]
Dxprt_rdma.h465 int rpcrdma_ia_open(struct rpcrdma_xprt *xprt);
596 void xprt_rdma_format_addresses(struct rpc_xprt *xprt, struct sockaddr *sap);
597 void xprt_rdma_free_addresses(struct rpc_xprt *xprt);
598 void xprt_rdma_close(struct rpc_xprt *xprt);
599 void xprt_rdma_print_stats(struct rpc_xprt *xprt, struct seq_file *seq);
Dsvc_rdma_sendto.c820 struct svc_xprt *xprt = rqstp->rq_xprt; in svc_rdma_sendto() local
822 container_of(xprt, struct svcxprt_rdma, sc_xprt); in svc_rdma_sendto()
895 set_bit(XPT_CLOSE, &xprt->xpt_flags); in svc_rdma_sendto()
Dsvc_rdma_rw.c301 struct svc_xprt *xprt = &rdma->sc_xprt; in svc_rdma_post_chunk_ctxt() local
340 set_bit(XPT_CLOSE, &xprt->xpt_flags); in svc_rdma_post_chunk_ctxt()
/net/sched/
Dcls_rsvp.h137 u8 *xprt; in rsvp_classify() local
157 xprt = ((u8 *)nhptr) + sizeof(struct ipv6hdr); in rsvp_classify()
162 xprt = ((u8 *)nhptr) + (nhptr->ihl<<2); in rsvp_classify()
175 (*(u32 *)(xprt + s->dpi.offset) ^ s->dpi.key)) && in rsvp_classify()
186 !(f->spi.mask & (*(u32 *)(xprt + f->spi.offset) ^ f->spi.key)) in rsvp_classify()
202 nhptr = (void *)(xprt + f->tunnelhdr - sizeof(*nhptr)); in rsvp_classify()