xprt 195 fs/lockd/svc.c struct svc_xprt *xprt; xprt 197 fs/lockd/svc.c xprt = svc_find_xprt(serv, name, net, family, 0); xprt 198 fs/lockd/svc.c if (xprt == NULL) xprt 201 fs/lockd/svc.c svc_xprt_put(xprt); xprt 144 fs/nfs/callback.c static inline void nfs_callback_bc_serv(u32 minorversion, struct rpc_xprt *xprt, xprt 152 fs/nfs/callback.c xprt->bc_serv = serv; xprt 155 fs/nfs/callback.c static inline void nfs_callback_bc_serv(u32 minorversion, struct rpc_xprt *xprt, xprt 161 fs/nfs/callback.c static int nfs_callback_start_svc(int minorversion, struct rpc_xprt *xprt, xprt 167 fs/nfs/callback.c nfs_callback_bc_serv(minorversion, xprt, serv); xprt 196 fs/nfs/callback.c struct net *net, struct rpc_xprt *xprt) xprt 215 fs/nfs/callback.c else if (xprt->ops->bc_setup) xprt 314 fs/nfs/callback.c int nfs_callback_up(u32 minorversion, struct rpc_xprt *xprt) xprt 319 fs/nfs/callback.c struct net *net = xprt->xprt_net; xprt 329 fs/nfs/callback.c ret = nfs_callback_up_net(minorversion, serv, net, xprt); xprt 333 fs/nfs/callback.c ret = nfs_callback_start_svc(minorversion, xprt, serv); xprt 205 fs/nfs/callback.h extern int nfs_callback_up(u32 minorversion, struct rpc_xprt *xprt); xprt 567 fs/nfs/internal.h struct rpc_xprt *xprt, xprt 69 fs/nfs/nfs4_fs.h struct rpc_xprt *xprt, void *data); xprt 324 fs/nfs/nfs4_fs.h struct nfs41_exchange_id_res *res, struct rpc_xprt *xprt); xprt 268 fs/nfs/nfs4client.c struct rpc_xprt *xprt; xprt 271 fs/nfs/nfs4client.c xprt = rcu_dereference_raw(clp->cl_rpcclient->cl_xprt); xprt 274 fs/nfs/nfs4client.c error = xprt_setup_backchannel(xprt, NFS41_BC_MIN_CALLBACKS); xprt 279 fs/nfs/nfs4client.c error = nfs_callback_up(clp->cl_mvops->minor_version, xprt); xprt 671 fs/nfs/nfs4client.c struct rpc_xprt *xprt) xprt 692 fs/nfs/nfs4client.c xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 697 fs/nfs/nfs4client.c xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 7884 fs/nfs/nfs4proc.c struct rpc_xprt *xprt, xprt 7904 fs/nfs/nfs4proc.c .rpc_xprt = xprt, xprt 7916 fs/nfs/nfs4proc.c if (xprt != rcu_access_pointer(clnt->cl_xprt)) xprt 7954 fs/nfs/nfs4proc.c struct rpc_xprt *xprt, xprt 7959 fs/nfs/nfs4proc.c return nfs4_proc_bind_one_conn_to_session(clnt, xprt, p->clp, p->cred); xprt 8129 fs/nfs/nfs4proc.c u32 sp4_how, struct rpc_xprt *xprt) xprt 8188 fs/nfs/nfs4proc.c if (xprt) { xprt 8189 fs/nfs/nfs4proc.c task_setup_data.rpc_xprt = xprt; xprt 8326 fs/nfs/nfs4proc.c void nfs4_test_session_trunk(struct rpc_clnt *clnt, struct rpc_xprt *xprt, xprt 8336 fs/nfs/nfs4proc.c xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 8341 fs/nfs/nfs4proc.c task = nfs4_run_exchange_id(adata->clp, adata->cred, sp4_how, xprt); xprt 8348 fs/nfs/nfs4proc.c task->tk_msg.rpc_resp, xprt); xprt 8351 fs/nfs/nfs4proc.c rpc_clnt_xprt_switch_add_xprt(clnt, xprt); xprt 579 fs/nfs/nfs4session.c struct rpc_xprt *xprt; xprt 587 fs/nfs/nfs4session.c xprt = rcu_dereference(session->clp->cl_rpcclient->cl_xprt); xprt 590 fs/nfs/nfs4session.c __func__, xprt); xprt 591 fs/nfs/nfs4session.c xprt_destroy_backchannel(xprt, NFS41_BC_MIN_CALLBACKS); xprt 761 fs/nfsd/nfsctl.c struct svc_xprt *xprt; xprt 789 fs/nfsd/nfsctl.c xprt = svc_find_xprt(nn->nfsd_serv, transport, net, PF_INET, port); xprt 790 fs/nfsd/nfsctl.c if (xprt != NULL) { xprt 791 fs/nfsd/nfsctl.c svc_close_xprt(xprt); xprt 792 fs/nfsd/nfsctl.c svc_xprt_put(xprt); xprt 35 include/linux/sunrpc/bc_xprt.h struct rpc_rqst *xprt_lookup_bc_request(struct rpc_xprt *xprt, __be32 xid); xprt 43 include/linux/sunrpc/bc_xprt.h int xprt_setup_bc(struct rpc_xprt *xprt, unsigned int min_reqs); xprt 44 include/linux/sunrpc/bc_xprt.h void xprt_destroy_bc(struct rpc_xprt *xprt, unsigned int max_reqs); xprt 46 include/linux/sunrpc/bc_xprt.h unsigned int xprt_bc_max_slots(struct rpc_xprt *xprt); xprt 61 include/linux/sunrpc/bc_xprt.h static inline int xprt_setup_backchannel(struct rpc_xprt *xprt, xprt 67 include/linux/sunrpc/bc_xprt.h static inline void xprt_destroy_backchannel(struct rpc_xprt *xprt, xprt 136 include/linux/sunrpc/clnt.h struct rpc_xprt *xprt, xprt 168 include/linux/sunrpc/clnt.h struct rpc_xprt *xprt); xprt 209 include/linux/sunrpc/clnt.h struct rpc_xprt *xprt, xprt 118 include/linux/sunrpc/debug.h rpc_xprt_debugfs_register(struct rpc_xprt *xprt) xprt 124 include/linux/sunrpc/debug.h rpc_xprt_debugfs_unregister(struct rpc_xprt *xprt) xprt 375 include/linux/sunrpc/svc.h struct svc_xprt *xprt; xprt 155 include/linux/sunrpc/svc_rdma.h extern int svc_rdma_handle_bc_reply(struct rpc_xprt *xprt, xprt 125 include/linux/sunrpc/svc_xprt.h void svc_xprt_do_enqueue(struct svc_xprt *xprt); xprt 126 include/linux/sunrpc/svc_xprt.h void svc_xprt_enqueue(struct svc_xprt *xprt); xprt 127 include/linux/sunrpc/svc_xprt.h void svc_xprt_put(struct svc_xprt *xprt); xprt 128 include/linux/sunrpc/svc_xprt.h void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt); xprt 129 include/linux/sunrpc/svc_xprt.h void svc_close_xprt(struct svc_xprt *xprt); xprt 136 include/linux/sunrpc/svc_xprt.h void svc_add_new_perm_xprt(struct svc_serv *serv, struct svc_xprt *xprt); xprt 139 include/linux/sunrpc/svc_xprt.h static inline void svc_xprt_get(struct svc_xprt *xprt) xprt 141 include/linux/sunrpc/svc_xprt.h kref_get(&xprt->xpt_ref); xprt 143 include/linux/sunrpc/svc_xprt.h static inline void svc_xprt_set_local(struct svc_xprt *xprt, xprt 147 include/linux/sunrpc/svc_xprt.h memcpy(&xprt->xpt_local, sa, salen); xprt 148 include/linux/sunrpc/svc_xprt.h xprt->xpt_locallen = salen; xprt 150 include/linux/sunrpc/svc_xprt.h static inline void svc_xprt_set_remote(struct svc_xprt *xprt, xprt 154 include/linux/sunrpc/svc_xprt.h memcpy(&xprt->xpt_remote, sa, salen); xprt 155 include/linux/sunrpc/svc_xprt.h xprt->xpt_remotelen = salen; xprt 156 include/linux/sunrpc/svc_xprt.h snprintf(xprt->xpt_remotebuf, sizeof(xprt->xpt_remotebuf) - 1, xprt 186 include/linux/sunrpc/svc_xprt.h static inline unsigned short svc_xprt_local_port(const struct svc_xprt *xprt) xprt 188 include/linux/sunrpc/svc_xprt.h return svc_addr_port((const struct sockaddr *)&xprt->xpt_local); xprt 191 include/linux/sunrpc/svc_xprt.h static inline unsigned short svc_xprt_remote_port(const struct svc_xprt *xprt) xprt 193 include/linux/sunrpc/svc_xprt.h return svc_addr_port((const struct sockaddr *)&xprt->xpt_remote); xprt 32 include/linux/sunrpc/xprt.h #define RPC_MAXCWND(xprt) ((xprt)->max_reqs << RPC_CWNDSHIFT) xprt 33 include/linux/sunrpc/xprt.h #define RPCXPRT_CONGESTED(xprt) ((xprt)->cong >= (xprt)->cwnd) xprt 133 include/linux/sunrpc/xprt.h void (*set_buffer_size)(struct rpc_xprt *xprt, size_t sndsize, size_t rcvsize); xprt 134 include/linux/sunrpc/xprt.h int (*reserve_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); xprt 135 include/linux/sunrpc/xprt.h void (*release_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); xprt 136 include/linux/sunrpc/xprt.h void (*alloc_slot)(struct rpc_xprt *xprt, struct rpc_task *task); xprt 137 include/linux/sunrpc/xprt.h void (*free_slot)(struct rpc_xprt *xprt, xprt 140 include/linux/sunrpc/xprt.h void (*set_port)(struct rpc_xprt *xprt, unsigned short port); xprt 141 include/linux/sunrpc/xprt.h void (*connect)(struct rpc_xprt *xprt, struct rpc_task *task); xprt 147 include/linux/sunrpc/xprt.h void (*timer)(struct rpc_xprt *xprt, struct rpc_task *task); xprt 149 include/linux/sunrpc/xprt.h void (*close)(struct rpc_xprt *xprt); xprt 150 include/linux/sunrpc/xprt.h void (*destroy)(struct rpc_xprt *xprt); xprt 151 include/linux/sunrpc/xprt.h void (*set_connect_timeout)(struct rpc_xprt *xprt, xprt 154 include/linux/sunrpc/xprt.h void (*print_stats)(struct rpc_xprt *xprt, struct seq_file *seq); xprt 155 include/linux/sunrpc/xprt.h int (*enable_swap)(struct rpc_xprt *xprt); xprt 156 include/linux/sunrpc/xprt.h void (*disable_swap)(struct rpc_xprt *xprt); xprt 157 include/linux/sunrpc/xprt.h void (*inject_disconnect)(struct rpc_xprt *xprt); xprt 158 include/linux/sunrpc/xprt.h int (*bc_setup)(struct rpc_xprt *xprt, xprt 160 include/linux/sunrpc/xprt.h size_t (*bc_maxpayload)(struct rpc_xprt *xprt); xprt 161 include/linux/sunrpc/xprt.h unsigned int (*bc_num_slots)(struct rpc_xprt *xprt); xprt 163 include/linux/sunrpc/xprt.h void (*bc_destroy)(struct rpc_xprt *xprt, xprt 340 include/linux/sunrpc/xprt.h unsigned long xprt_reconnect_delay(const struct rpc_xprt *xprt); xprt 341 include/linux/sunrpc/xprt.h void xprt_reconnect_backoff(struct rpc_xprt *xprt, xprt 345 include/linux/sunrpc/xprt.h int xprt_reserve_xprt(struct rpc_xprt *xprt, struct rpc_task *task); xprt 346 include/linux/sunrpc/xprt.h int xprt_reserve_xprt_cong(struct rpc_xprt *xprt, struct rpc_task *task); xprt 347 include/linux/sunrpc/xprt.h void xprt_alloc_slot(struct rpc_xprt *xprt, struct rpc_task *task); xprt 348 include/linux/sunrpc/xprt.h void xprt_free_slot(struct rpc_xprt *xprt, xprt 360 include/linux/sunrpc/xprt.h void xprt_release_xprt(struct rpc_xprt *xprt, struct rpc_task *task); xprt 361 include/linux/sunrpc/xprt.h void xprt_release_xprt_cong(struct rpc_xprt *xprt, struct rpc_task *task); xprt 363 include/linux/sunrpc/xprt.h struct rpc_xprt * xprt_get(struct rpc_xprt *xprt); xprt 364 include/linux/sunrpc/xprt.h void xprt_put(struct rpc_xprt *xprt); xprt 371 include/linux/sunrpc/xprt.h xprt_enable_swap(struct rpc_xprt *xprt) xprt 373 include/linux/sunrpc/xprt.h return xprt->ops->enable_swap(xprt); xprt 377 include/linux/sunrpc/xprt.h xprt_disable_swap(struct rpc_xprt *xprt) xprt 379 include/linux/sunrpc/xprt.h xprt->ops->disable_swap(xprt); xprt 390 include/linux/sunrpc/xprt.h void xprt_wake_pending_tasks(struct rpc_xprt *xprt, int status); xprt 391 include/linux/sunrpc/xprt.h void xprt_wait_for_buffer_space(struct rpc_xprt *xprt); xprt 392 include/linux/sunrpc/xprt.h bool xprt_write_space(struct rpc_xprt *xprt); xprt 393 include/linux/sunrpc/xprt.h void xprt_adjust_cwnd(struct rpc_xprt *xprt, struct rpc_task *task, int result); xprt 394 include/linux/sunrpc/xprt.h struct rpc_rqst * xprt_lookup_rqst(struct rpc_xprt *xprt, __be32 xid); xprt 400 include/linux/sunrpc/xprt.h bool xprt_request_get_cong(struct rpc_xprt *xprt, struct rpc_rqst *req); xprt 401 include/linux/sunrpc/xprt.h void xprt_disconnect_done(struct rpc_xprt *xprt); xprt 402 include/linux/sunrpc/xprt.h void xprt_force_disconnect(struct rpc_xprt *xprt); xprt 403 include/linux/sunrpc/xprt.h void xprt_conditional_disconnect(struct rpc_xprt *xprt, unsigned int cookie); xprt 422 include/linux/sunrpc/xprt.h static inline void xprt_set_connected(struct rpc_xprt *xprt) xprt 424 include/linux/sunrpc/xprt.h set_bit(XPRT_CONNECTED, &xprt->state); xprt 427 include/linux/sunrpc/xprt.h static inline void xprt_clear_connected(struct rpc_xprt *xprt) xprt 429 include/linux/sunrpc/xprt.h clear_bit(XPRT_CONNECTED, &xprt->state); xprt 432 include/linux/sunrpc/xprt.h static inline int xprt_connected(struct rpc_xprt *xprt) xprt 434 include/linux/sunrpc/xprt.h return test_bit(XPRT_CONNECTED, &xprt->state); xprt 437 include/linux/sunrpc/xprt.h static inline int xprt_test_and_set_connected(struct rpc_xprt *xprt) xprt 439 include/linux/sunrpc/xprt.h return test_and_set_bit(XPRT_CONNECTED, &xprt->state); xprt 442 include/linux/sunrpc/xprt.h static inline int xprt_test_and_clear_connected(struct rpc_xprt *xprt) xprt 444 include/linux/sunrpc/xprt.h return test_and_clear_bit(XPRT_CONNECTED, &xprt->state); xprt 447 include/linux/sunrpc/xprt.h static inline void xprt_clear_connecting(struct rpc_xprt *xprt) xprt 450 include/linux/sunrpc/xprt.h clear_bit(XPRT_CONNECTING, &xprt->state); xprt 454 include/linux/sunrpc/xprt.h static inline int xprt_connecting(struct rpc_xprt *xprt) xprt 456 include/linux/sunrpc/xprt.h return test_bit(XPRT_CONNECTING, &xprt->state); xprt 459 include/linux/sunrpc/xprt.h static inline int xprt_test_and_set_connecting(struct rpc_xprt *xprt) xprt 461 include/linux/sunrpc/xprt.h return test_and_set_bit(XPRT_CONNECTING, &xprt->state); xprt 464 include/linux/sunrpc/xprt.h static inline void xprt_set_bound(struct rpc_xprt *xprt) xprt 466 include/linux/sunrpc/xprt.h test_and_set_bit(XPRT_BOUND, &xprt->state); xprt 469 include/linux/sunrpc/xprt.h static inline int xprt_bound(struct rpc_xprt *xprt) xprt 471 include/linux/sunrpc/xprt.h return test_bit(XPRT_BOUND, &xprt->state); xprt 474 include/linux/sunrpc/xprt.h static inline void xprt_clear_bound(struct rpc_xprt *xprt) xprt 476 include/linux/sunrpc/xprt.h clear_bit(XPRT_BOUND, &xprt->state); xprt 479 include/linux/sunrpc/xprt.h static inline void xprt_clear_binding(struct rpc_xprt *xprt) xprt 482 include/linux/sunrpc/xprt.h clear_bit(XPRT_BINDING, &xprt->state); xprt 486 include/linux/sunrpc/xprt.h static inline int xprt_test_and_set_binding(struct rpc_xprt *xprt) xprt 488 include/linux/sunrpc/xprt.h return test_and_set_bit(XPRT_BINDING, &xprt->state); xprt 493 include/linux/sunrpc/xprt.h static inline void xprt_inject_disconnect(struct rpc_xprt *xprt) xprt 497 include/linux/sunrpc/xprt.h if (atomic_dec_return(&xprt->inject_disconnect)) xprt 499 include/linux/sunrpc/xprt.h atomic_set(&xprt->inject_disconnect, rpc_inject_disconnect); xprt 500 include/linux/sunrpc/xprt.h xprt->ops->inject_disconnect(xprt); xprt 503 include/linux/sunrpc/xprt.h static inline void xprt_inject_disconnect(struct rpc_xprt *xprt) xprt 43 include/linux/sunrpc/xprtmultipath.h extern struct rpc_xprt_switch *xprt_switch_alloc(struct rpc_xprt *xprt, xprt 52 include/linux/sunrpc/xprtmultipath.h struct rpc_xprt *xprt); xprt 54 include/linux/sunrpc/xprtmultipath.h struct rpc_xprt *xprt); xprt 22 include/linux/sunrpc/xprtsock.h struct rpc_xprt xprt; xprt 1270 include/trace/events/rpcrdma.h const struct svc_xprt *xprt xprt 1273 include/trace/events/rpcrdma.h TP_ARGS(xprt), xprt 1276 include/trace/events/rpcrdma.h __field(const void *, xprt) xprt 1277 include/trace/events/rpcrdma.h __string(addr, xprt->xpt_remotebuf) xprt 1281 include/trace/events/rpcrdma.h __entry->xprt = xprt; xprt 1282 include/trace/events/rpcrdma.h __assign_str(addr, xprt->xpt_remotebuf); xprt 1286 include/trace/events/rpcrdma.h __entry->xprt, __get_str(addr) xprt 1293 include/trace/events/rpcrdma.h const struct svc_xprt *xprt \ xprt 1295 include/trace/events/rpcrdma.h TP_ARGS(xprt)) xprt 1587 include/trace/events/rpcrdma.h __field(const void *, xprt) xprt 1594 include/trace/events/rpcrdma.h __entry->xprt = rqst->rq_xprt; xprt 1599 include/trace/events/rpcrdma.h __entry->xprt, __get_str(addr), xprt 552 include/trace/events/sunrpc.h struct rpc_xprt *xprt, xprt 556 include/trace/events/sunrpc.h TP_ARGS(xprt, socket), xprt 563 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_ADDR]) xprt 565 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_PORT]) xprt 574 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 576 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_PORT]); xprt 592 include/trace/events/sunrpc.h struct rpc_xprt *xprt, \ xprt 595 include/trace/events/sunrpc.h TP_ARGS(xprt, socket)) xprt 600 include/trace/events/sunrpc.h struct rpc_xprt *xprt, xprt 605 include/trace/events/sunrpc.h TP_ARGS(xprt, socket, error), xprt 613 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_ADDR]) xprt 615 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_PORT]) xprt 625 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 627 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_PORT]); xprt 644 include/trace/events/sunrpc.h struct rpc_xprt *xprt, \ xprt 648 include/trace/events/sunrpc.h TP_ARGS(xprt, socket, error)) xprt 659 include/trace/events/sunrpc.h const struct rpc_xprt *xprt, xprt 664 include/trace/events/sunrpc.h TP_ARGS(xprt, xid, status), xprt 669 include/trace/events/sunrpc.h __string(addr, xprt->address_strings[RPC_DISPLAY_ADDR]) xprt 670 include/trace/events/sunrpc.h __string(port, xprt->address_strings[RPC_DISPLAY_PORT]) xprt 676 include/trace/events/sunrpc.h __assign_str(addr, xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 677 include/trace/events/sunrpc.h __assign_str(port, xprt->address_strings[RPC_DISPLAY_PORT]); xprt 687 include/trace/events/sunrpc.h const struct rpc_xprt *xprt, \ xprt 691 include/trace/events/sunrpc.h TP_ARGS(xprt, xid, status)) xprt 760 include/trace/events/sunrpc.h TP_PROTO(const struct rpc_xprt *xprt, int status), xprt 762 include/trace/events/sunrpc.h TP_ARGS(xprt, status), xprt 766 include/trace/events/sunrpc.h __string(addr, xprt->address_strings[RPC_DISPLAY_ADDR]) xprt 767 include/trace/events/sunrpc.h __string(port, xprt->address_strings[RPC_DISPLAY_PORT]) xprt 772 include/trace/events/sunrpc.h __assign_str(addr, xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 773 include/trace/events/sunrpc.h __assign_str(port, xprt->address_strings[RPC_DISPLAY_PORT]); xprt 781 include/trace/events/sunrpc.h TP_PROTO(struct rpc_xprt *xprt, ssize_t err, size_t total), xprt 783 include/trace/events/sunrpc.h TP_ARGS(xprt, err, total), xprt 788 include/trace/events/sunrpc.h __string(addr, xprt ? xprt->address_strings[RPC_DISPLAY_ADDR] : xprt 790 include/trace/events/sunrpc.h __string(port, xprt ? xprt->address_strings[RPC_DISPLAY_PORT] : xprt 797 include/trace/events/sunrpc.h __assign_str(addr, xprt ? xprt 798 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_ADDR] : "(null)"); xprt 799 include/trace/events/sunrpc.h __assign_str(port, xprt ? xprt 800 include/trace/events/sunrpc.h xprt->address_strings[RPC_DISPLAY_PORT] : "(null)"); xprt 813 include/trace/events/sunrpc.h __string(addr, xs->xprt.address_strings[RPC_DISPLAY_ADDR]) xprt 814 include/trace/events/sunrpc.h __string(port, xs->xprt.address_strings[RPC_DISPLAY_PORT]) xprt 822 include/trace/events/sunrpc.h __assign_str(addr, xs->xprt.address_strings[RPC_DISPLAY_ADDR]); xprt 823 include/trace/events/sunrpc.h __assign_str(port, xs->xprt.address_strings[RPC_DISPLAY_PORT]); xprt 978 include/trace/events/sunrpc.h TP_PROTO(struct svc_xprt *xprt, struct svc_rqst *rqst), xprt 980 include/trace/events/sunrpc.h TP_ARGS(xprt, rqst), xprt 983 include/trace/events/sunrpc.h __field(struct svc_xprt *, xprt) xprt 986 include/trace/events/sunrpc.h __string(addr, xprt->xpt_remotebuf) xprt 990 include/trace/events/sunrpc.h __entry->xprt = xprt; xprt 992 include/trace/events/sunrpc.h __entry->flags = xprt->xpt_flags; xprt 993 include/trace/events/sunrpc.h __assign_str(addr, xprt->xpt_remotebuf); xprt 997 include/trace/events/sunrpc.h __entry->xprt, __get_str(addr), xprt 1002 include/trace/events/sunrpc.h TP_PROTO(struct svc_xprt *xprt), xprt 1004 include/trace/events/sunrpc.h TP_ARGS(xprt), xprt 1007 include/trace/events/sunrpc.h __field(struct svc_xprt *, xprt) xprt 1009 include/trace/events/sunrpc.h __string(addr, xprt->xpt_remotebuf) xprt 1013 include/trace/events/sunrpc.h __entry->xprt = xprt; xprt 1014 include/trace/events/sunrpc.h __entry->flags = xprt->xpt_flags; xprt 1015 include/trace/events/sunrpc.h __assign_str(addr, xprt->xpt_remotebuf); xprt 1019 include/trace/events/sunrpc.h __entry->xprt, __get_str(addr), xprt 1024 include/trace/events/sunrpc.h TP_PROTO(struct svc_xprt *xprt), xprt 1025 include/trace/events/sunrpc.h TP_ARGS(xprt)); xprt 1033 include/trace/events/sunrpc.h __field(struct svc_xprt *, xprt) xprt 1040 include/trace/events/sunrpc.h __entry->xprt = rqst->rq_xprt; xprt 1048 include/trace/events/sunrpc.h __entry->xprt, __get_str(addr), xprt 1070 include/trace/events/sunrpc.h TP_PROTO(struct svc_xprt *xprt, int len), xprt 1072 include/trace/events/sunrpc.h TP_ARGS(xprt, len), xprt 1075 include/trace/events/sunrpc.h __field(struct svc_xprt *, xprt) xprt 1078 include/trace/events/sunrpc.h __string(addr, xprt->xpt_remotebuf) xprt 1082 include/trace/events/sunrpc.h __entry->xprt = xprt; xprt 1084 include/trace/events/sunrpc.h __entry->flags = xprt->xpt_flags; xprt 1085 include/trace/events/sunrpc.h __assign_str(addr, xprt->xpt_remotebuf); xprt 1089 include/trace/events/sunrpc.h __entry->xprt, __get_str(addr), xprt 1124 include/trace/events/sunrpc.h __string(addr, dr->xprt->xpt_remotebuf) xprt 1130 include/trace/events/sunrpc.h __assign_str(addr, dr->xprt->xpt_remotebuf); xprt 137 net/sched/cls_rsvp.h u8 *xprt; xprt 157 net/sched/cls_rsvp.h xprt = ((u8 *)nhptr) + sizeof(struct ipv6hdr); xprt 162 net/sched/cls_rsvp.h xprt = ((u8 *)nhptr) + (nhptr->ihl<<2); xprt 175 net/sched/cls_rsvp.h (*(u32 *)(xprt + s->dpi.offset) ^ s->dpi.key)) && xprt 186 net/sched/cls_rsvp.h !(f->spi.mask & (*(u32 *)(xprt + f->spi.offset) ^ f->spi.key)) xprt 202 net/sched/cls_rsvp.h nhptr = (void *)(xprt + f->tunnelhdr - sizeof(*nhptr)); xprt 36 net/sunrpc/backchannel_rqst.c unsigned int xprt_bc_max_slots(struct rpc_xprt *xprt) xprt 45 net/sunrpc/backchannel_rqst.c static inline int xprt_need_to_requeue(struct rpc_xprt *xprt) xprt 47 net/sunrpc/backchannel_rqst.c return xprt->bc_alloc_count < xprt->bc_alloc_max; xprt 79 net/sunrpc/backchannel_rqst.c struct rpc_rqst *xprt_alloc_bc_req(struct rpc_xprt *xprt, gfp_t gfp_flags) xprt 88 net/sunrpc/backchannel_rqst.c req->rq_xprt = xprt; xprt 127 net/sunrpc/backchannel_rqst.c int xprt_setup_backchannel(struct rpc_xprt *xprt, unsigned int min_reqs) xprt 129 net/sunrpc/backchannel_rqst.c if (!xprt->ops->bc_setup) xprt 131 net/sunrpc/backchannel_rqst.c return xprt->ops->bc_setup(xprt, min_reqs); xprt 135 net/sunrpc/backchannel_rqst.c int xprt_setup_bc(struct rpc_xprt *xprt, unsigned int min_reqs) xprt 157 net/sunrpc/backchannel_rqst.c req = xprt_alloc_bc_req(xprt, GFP_KERNEL); xprt 171 net/sunrpc/backchannel_rqst.c spin_lock(&xprt->bc_pa_lock); xprt 172 net/sunrpc/backchannel_rqst.c list_splice(&tmp_list, &xprt->bc_pa_list); xprt 173 net/sunrpc/backchannel_rqst.c xprt->bc_alloc_count += min_reqs; xprt 174 net/sunrpc/backchannel_rqst.c xprt->bc_alloc_max += min_reqs; xprt 175 net/sunrpc/backchannel_rqst.c atomic_add(min_reqs, &xprt->bc_slot_count); xprt 176 net/sunrpc/backchannel_rqst.c spin_unlock(&xprt->bc_pa_lock); xprt 206 net/sunrpc/backchannel_rqst.c void xprt_destroy_backchannel(struct rpc_xprt *xprt, unsigned int max_reqs) xprt 208 net/sunrpc/backchannel_rqst.c if (xprt->ops->bc_destroy) xprt 209 net/sunrpc/backchannel_rqst.c xprt->ops->bc_destroy(xprt, max_reqs); xprt 213 net/sunrpc/backchannel_rqst.c void xprt_destroy_bc(struct rpc_xprt *xprt, unsigned int max_reqs) xprt 222 net/sunrpc/backchannel_rqst.c spin_lock_bh(&xprt->bc_pa_lock); xprt 223 net/sunrpc/backchannel_rqst.c xprt->bc_alloc_max -= min(max_reqs, xprt->bc_alloc_max); xprt 224 net/sunrpc/backchannel_rqst.c list_for_each_entry_safe(req, tmp, &xprt->bc_pa_list, rq_bc_pa_list) { xprt 228 net/sunrpc/backchannel_rqst.c xprt->bc_alloc_count--; xprt 229 net/sunrpc/backchannel_rqst.c atomic_dec(&xprt->bc_slot_count); xprt 233 net/sunrpc/backchannel_rqst.c spin_unlock_bh(&xprt->bc_pa_lock); xprt 237 net/sunrpc/backchannel_rqst.c list_empty(&xprt->bc_pa_list) ? "true" : "false"); xprt 240 net/sunrpc/backchannel_rqst.c static struct rpc_rqst *xprt_get_bc_request(struct rpc_xprt *xprt, __be32 xid, xprt 246 net/sunrpc/backchannel_rqst.c if (list_empty(&xprt->bc_pa_list)) { xprt 249 net/sunrpc/backchannel_rqst.c if (atomic_read(&xprt->bc_slot_count) >= BC_MAX_SLOTS) xprt 251 net/sunrpc/backchannel_rqst.c list_add_tail(&new->rq_bc_pa_list, &xprt->bc_pa_list); xprt 252 net/sunrpc/backchannel_rqst.c xprt->bc_alloc_count++; xprt 253 net/sunrpc/backchannel_rqst.c atomic_inc(&xprt->bc_slot_count); xprt 255 net/sunrpc/backchannel_rqst.c req = list_first_entry(&xprt->bc_pa_list, struct rpc_rqst, xprt 261 net/sunrpc/backchannel_rqst.c req->rq_connect_cookie = xprt->connect_cookie; xprt 273 net/sunrpc/backchannel_rqst.c struct rpc_xprt *xprt = req->rq_xprt; xprt 275 net/sunrpc/backchannel_rqst.c xprt->ops->bc_free_rqst(req); xprt 280 net/sunrpc/backchannel_rqst.c struct rpc_xprt *xprt = req->rq_xprt; xprt 284 net/sunrpc/backchannel_rqst.c req->rq_connect_cookie = xprt->connect_cookie - 1; xprt 293 net/sunrpc/backchannel_rqst.c spin_lock_bh(&xprt->bc_pa_lock); xprt 294 net/sunrpc/backchannel_rqst.c if (xprt_need_to_requeue(xprt)) { xprt 295 net/sunrpc/backchannel_rqst.c list_add_tail(&req->rq_bc_pa_list, &xprt->bc_pa_list); xprt 296 net/sunrpc/backchannel_rqst.c xprt->bc_alloc_count++; xprt 297 net/sunrpc/backchannel_rqst.c atomic_inc(&xprt->bc_slot_count); xprt 300 net/sunrpc/backchannel_rqst.c spin_unlock_bh(&xprt->bc_pa_lock); xprt 311 net/sunrpc/backchannel_rqst.c xprt_put(xprt); xprt 325 net/sunrpc/backchannel_rqst.c struct rpc_rqst *xprt_lookup_bc_request(struct rpc_xprt *xprt, __be32 xid) xprt 330 net/sunrpc/backchannel_rqst.c spin_lock(&xprt->bc_pa_lock); xprt 331 net/sunrpc/backchannel_rqst.c list_for_each_entry(req, &xprt->bc_pa_list, rq_bc_pa_list) { xprt 332 net/sunrpc/backchannel_rqst.c if (req->rq_connect_cookie != xprt->connect_cookie) xprt 337 net/sunrpc/backchannel_rqst.c req = xprt_get_bc_request(xprt, xid, new); xprt 339 net/sunrpc/backchannel_rqst.c spin_unlock(&xprt->bc_pa_lock); xprt 346 net/sunrpc/backchannel_rqst.c new = xprt_alloc_bc_req(xprt, GFP_KERNEL); xprt 359 net/sunrpc/backchannel_rqst.c struct rpc_xprt *xprt = req->rq_xprt; xprt 360 net/sunrpc/backchannel_rqst.c struct svc_serv *bc_serv = xprt->bc_serv; xprt 362 net/sunrpc/backchannel_rqst.c spin_lock(&xprt->bc_pa_lock); xprt 364 net/sunrpc/backchannel_rqst.c xprt->bc_alloc_count--; xprt 365 net/sunrpc/backchannel_rqst.c spin_unlock(&xprt->bc_pa_lock); xprt 371 net/sunrpc/backchannel_rqst.c xprt_get(xprt); xprt 268 net/sunrpc/clnt.c struct rpc_xprt *xprt, xprt 277 net/sunrpc/clnt.c if (!xprt_bound(xprt)) xprt 281 net/sunrpc/clnt.c rcu_assign_pointer(clnt->cl_xprt, xprt); xprt 363 net/sunrpc/clnt.c struct rpc_xprt *xprt, xprt 375 net/sunrpc/clnt.c program->name, args->servername, xprt); xprt 413 net/sunrpc/clnt.c timeout = xprt->timeout; xprt 420 net/sunrpc/clnt.c rpc_clnt_set_transport(clnt, xprt, timeout); xprt 452 net/sunrpc/clnt.c xprt_put(xprt); xprt 457 net/sunrpc/clnt.c struct rpc_xprt *xprt) xprt 467 net/sunrpc/clnt.c xps = xprt_switch_alloc(xprt, GFP_KERNEL); xprt 469 net/sunrpc/clnt.c xprt_put(xprt); xprt 472 net/sunrpc/clnt.c if (xprt->bc_xprt) { xprt 474 net/sunrpc/clnt.c xprt->bc_xprt->xpt_bc_xps = xps; xprt 477 net/sunrpc/clnt.c clnt = rpc_new_client(args, xps, xprt, NULL); xprt 520 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 536 net/sunrpc/clnt.c xprt = args->bc_xprt->xpt_bc_xprt; xprt 537 net/sunrpc/clnt.c if (xprt) { xprt 538 net/sunrpc/clnt.c xprt_get(xprt); xprt 539 net/sunrpc/clnt.c return rpc_create_xprt(args, xprt); xprt 581 net/sunrpc/clnt.c xprt = xprt_create_transport(&xprtargs); xprt 582 net/sunrpc/clnt.c if (IS_ERR(xprt)) xprt 583 net/sunrpc/clnt.c return (struct rpc_clnt *)xprt; xprt 591 net/sunrpc/clnt.c xprt->resvport = 1; xprt 593 net/sunrpc/clnt.c xprt->resvport = 0; xprt 595 net/sunrpc/clnt.c clnt = rpc_create_xprt(args, xprt); xprt 616 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 622 net/sunrpc/clnt.c xprt = xprt_get(rcu_dereference(clnt->cl_xprt)); xprt 625 net/sunrpc/clnt.c if (xprt == NULL || xps == NULL) { xprt 626 net/sunrpc/clnt.c xprt_put(xprt); xprt 630 net/sunrpc/clnt.c args->servername = xprt->servername; xprt 633 net/sunrpc/clnt.c new = rpc_new_client(args, xps, xprt, clnt); xprt 718 net/sunrpc/clnt.c struct rpc_xprt *xprt, *old; xprt 722 net/sunrpc/clnt.c xprt = xprt_create_transport(args); xprt 723 net/sunrpc/clnt.c if (IS_ERR(xprt)) { xprt 726 net/sunrpc/clnt.c return PTR_ERR(xprt); xprt 729 net/sunrpc/clnt.c xps = xprt_switch_alloc(xprt, GFP_KERNEL); xprt 731 net/sunrpc/clnt.c xprt_put(xprt); xprt 738 net/sunrpc/clnt.c old = rpc_clnt_set_transport(clnt, xprt, timeout); xprt 776 net/sunrpc/clnt.c xprt_put(xprt); xprt 819 net/sunrpc/clnt.c struct rpc_xprt *xprt = xprt_iter_get_next(&xpi); xprt 821 net/sunrpc/clnt.c if (!xprt) xprt 823 net/sunrpc/clnt.c ret = fn(clnt, xprt, data); xprt 824 net/sunrpc/clnt.c xprt_put(xprt); xprt 982 net/sunrpc/clnt.c rpc_task_get_xprt(struct rpc_clnt *clnt, struct rpc_xprt *xprt) xprt 986 net/sunrpc/clnt.c if (!xprt) xprt 992 net/sunrpc/clnt.c atomic_long_inc(&xprt->queuelen); xprt 994 net/sunrpc/clnt.c return xprt; xprt 998 net/sunrpc/clnt.c rpc_task_release_xprt(struct rpc_clnt *clnt, struct rpc_xprt *xprt) xprt 1002 net/sunrpc/clnt.c atomic_long_dec(&xprt->queuelen); xprt 1008 net/sunrpc/clnt.c xprt_put(xprt); xprt 1013 net/sunrpc/clnt.c struct rpc_xprt *xprt = task->tk_xprt; xprt 1015 net/sunrpc/clnt.c if (xprt) { xprt 1018 net/sunrpc/clnt.c rpc_task_release_xprt(task->tk_client, xprt); xprt 1020 net/sunrpc/clnt.c xprt_put(xprt); xprt 1044 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 1047 net/sunrpc/clnt.c xprt = xprt_get(rcu_dereference(clnt->cl_xprt)); xprt 1049 net/sunrpc/clnt.c return rpc_task_get_xprt(clnt, xprt); xprt 1275 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 1278 net/sunrpc/clnt.c xprt = rcu_dereference(clnt->cl_xprt); xprt 1280 net/sunrpc/clnt.c bytes = xprt->addrlen; xprt 1283 net/sunrpc/clnt.c memcpy(buf, &xprt->addr, bytes); xprt 1302 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 1304 net/sunrpc/clnt.c xprt = rcu_dereference(clnt->cl_xprt); xprt 1306 net/sunrpc/clnt.c if (xprt->address_strings[format] != NULL) xprt 1307 net/sunrpc/clnt.c return xprt->address_strings[format]; xprt 1441 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 1447 net/sunrpc/clnt.c xprt = rcu_dereference(clnt->cl_xprt); xprt 1448 net/sunrpc/clnt.c salen = xprt->addrlen; xprt 1449 net/sunrpc/clnt.c memcpy(sap, &xprt->addr, salen); xprt 1450 net/sunrpc/clnt.c net = get_net(xprt->xprt_net); xprt 1466 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 1469 net/sunrpc/clnt.c xprt = rcu_dereference(clnt->cl_xprt); xprt 1470 net/sunrpc/clnt.c if (xprt->ops->set_buffer_size) xprt 1471 net/sunrpc/clnt.c xprt->ops->set_buffer_size(xprt, sndsize, rcvsize); xprt 1518 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 1522 net/sunrpc/clnt.c xprt = rcu_dereference(clnt->cl_xprt); xprt 1523 net/sunrpc/clnt.c ret = xprt->ops->bc_maxpayload(xprt); xprt 1531 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 1535 net/sunrpc/clnt.c xprt = rcu_dereference(clnt->cl_xprt); xprt 1536 net/sunrpc/clnt.c ret = xprt->ops->bc_num_slots(xprt); xprt 1789 net/sunrpc/clnt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1823 net/sunrpc/clnt.c status = xprt->ops->buf_alloc(task); xprt 1824 net/sunrpc/clnt.c xprt_inject_disconnect(xprt); xprt 1949 net/sunrpc/clnt.c struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; xprt 1956 net/sunrpc/clnt.c if (xprt_bound(xprt)) { xprt 1967 net/sunrpc/clnt.c xprt->ops->rpcbind(task); xprt 1976 net/sunrpc/clnt.c struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; xprt 1988 net/sunrpc/clnt.c if (xprt_bound(xprt)) { xprt 2068 net/sunrpc/clnt.c struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; xprt 2075 net/sunrpc/clnt.c if (xprt_connected(xprt)) { xprt 2081 net/sunrpc/clnt.c task->tk_pid, xprt, xprt 2082 net/sunrpc/clnt.c (xprt_connected(xprt) ? "is" : "is not")); xprt 2102 net/sunrpc/clnt.c struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; xprt 2118 net/sunrpc/clnt.c if (xprt_connected(xprt)) { xprt 2738 net/sunrpc/clnt.c struct rpc_xprt *xprt, struct rpc_cred *cred, int flags, xprt 2746 net/sunrpc/clnt.c .rpc_xprt = xprt, xprt 2765 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 2773 net/sunrpc/clnt.c rpc_xprt_switch_add_xprt(data->xps, data->xprt); xprt 2780 net/sunrpc/clnt.c xprt_put(data->xprt); xprt 2798 net/sunrpc/clnt.c struct rpc_xprt_switch *xps, struct rpc_xprt *xprt, xprt 2808 net/sunrpc/clnt.c data->xprt = xprt_get(xprt); xprt 2809 net/sunrpc/clnt.c if (rpc_xprt_switch_has_addr(data->xps, (struct sockaddr *)&xprt->addr)) { xprt 2814 net/sunrpc/clnt.c task = rpc_call_null_helper(clnt, xprt, NULL, xprt 2845 net/sunrpc/clnt.c struct rpc_xprt *xprt, xprt 2852 net/sunrpc/clnt.c xprt = xprt_get(xprt); xprt 2855 net/sunrpc/clnt.c if (rpc_xprt_switch_has_addr(xps, (struct sockaddr *)&xprt->addr)) xprt 2859 net/sunrpc/clnt.c task = rpc_call_null_helper(clnt, xprt, NULL, xprt 2873 net/sunrpc/clnt.c xtest->add_xprt_test(clnt, xprt, xtest->data); xprt 2875 net/sunrpc/clnt.c xprt_put(xprt); xprt 2881 net/sunrpc/clnt.c xprt_put(xprt); xprt 2884 net/sunrpc/clnt.c status, xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 2911 net/sunrpc/clnt.c struct rpc_xprt *xprt; xprt 2919 net/sunrpc/clnt.c xprt = xprt_iter_xprt(&clnt->cl_xpi); xprt 2920 net/sunrpc/clnt.c if (xps == NULL || xprt == NULL) { xprt 2925 net/sunrpc/clnt.c resvport = xprt->resvport; xprt 2926 net/sunrpc/clnt.c connect_timeout = xprt->connect_timeout; xprt 2927 net/sunrpc/clnt.c reconnect_timeout = xprt->max_reconnect_timeout; xprt 2930 net/sunrpc/clnt.c xprt = xprt_create_transport(xprtargs); xprt 2931 net/sunrpc/clnt.c if (IS_ERR(xprt)) { xprt 2932 net/sunrpc/clnt.c ret = PTR_ERR(xprt); xprt 2935 net/sunrpc/clnt.c xprt->resvport = resvport; xprt 2936 net/sunrpc/clnt.c if (xprt->ops->set_connect_timeout != NULL) xprt 2937 net/sunrpc/clnt.c xprt->ops->set_connect_timeout(xprt, xprt 2943 net/sunrpc/clnt.c ret = setup(clnt, xps, xprt, data); xprt 2947 net/sunrpc/clnt.c rpc_xprt_switch_add_xprt(xps, xprt); xprt 2949 net/sunrpc/clnt.c xprt_put(xprt); xprt 2963 net/sunrpc/clnt.c struct rpc_xprt *xprt, xprt 2968 net/sunrpc/clnt.c if (xprt->ops->set_connect_timeout) xprt 2969 net/sunrpc/clnt.c xprt->ops->set_connect_timeout(xprt, xprt 2998 net/sunrpc/clnt.c void rpc_clnt_xprt_switch_add_xprt(struct rpc_clnt *clnt, struct rpc_xprt *xprt) xprt 3002 net/sunrpc/clnt.c xprt); xprt 3069 net/sunrpc/clnt.c struct rpc_xprt *xprt, xprt 3072 net/sunrpc/clnt.c return xprt_enable_swap(xprt); xprt 3087 net/sunrpc/clnt.c struct rpc_xprt *xprt, xprt 3090 net/sunrpc/clnt.c xprt_disable_swap(xprt); xprt 120 net/sunrpc/debugfs.c static int do_xprt_debugfs(struct rpc_clnt *clnt, struct rpc_xprt *xprt, void *numv) xprt 127 net/sunrpc/debugfs.c if (IS_ERR_OR_NULL(xprt->debugfs)) xprt 130 net/sunrpc/debugfs.c xprt->debugfs->d_name.name); xprt 176 net/sunrpc/debugfs.c struct rpc_xprt *xprt = f->private; xprt 178 net/sunrpc/debugfs.c seq_printf(f, "netid: %s\n", xprt->address_strings[RPC_DISPLAY_NETID]); xprt 179 net/sunrpc/debugfs.c seq_printf(f, "addr: %s\n", xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 180 net/sunrpc/debugfs.c seq_printf(f, "port: %s\n", xprt->address_strings[RPC_DISPLAY_PORT]); xprt 181 net/sunrpc/debugfs.c seq_printf(f, "state: 0x%lx\n", xprt->state); xprt 189 net/sunrpc/debugfs.c struct rpc_xprt *xprt = inode->i_private; xprt 191 net/sunrpc/debugfs.c ret = single_open(filp, xprt_info_show, xprt); xprt 194 net/sunrpc/debugfs.c if (!xprt_get(xprt)) { xprt 205 net/sunrpc/debugfs.c struct rpc_xprt *xprt = inode->i_private; xprt 207 net/sunrpc/debugfs.c xprt_put(xprt); xprt 220 net/sunrpc/debugfs.c rpc_xprt_debugfs_register(struct rpc_xprt *xprt) xprt 233 net/sunrpc/debugfs.c xprt->debugfs = debugfs_create_dir(name, rpc_xprt_dir); xprt 236 net/sunrpc/debugfs.c debugfs_create_file("info", S_IFREG | 0400, xprt->debugfs, xprt, xprt 239 net/sunrpc/debugfs.c atomic_set(&xprt->inject_disconnect, rpc_inject_disconnect); xprt 243 net/sunrpc/debugfs.c rpc_xprt_debugfs_unregister(struct rpc_xprt *xprt) xprt 245 net/sunrpc/debugfs.c debugfs_remove_recursive(xprt->debugfs); xprt 246 net/sunrpc/debugfs.c xprt->debugfs = NULL; xprt 149 net/sunrpc/rpcb_clnt.c static void rpcb_wake_rpcbind_waiters(struct rpc_xprt *xprt, int status) xprt 151 net/sunrpc/rpcb_clnt.c xprt_clear_binding(xprt); xprt 152 net/sunrpc/rpcb_clnt.c rpc_wake_up_status(&xprt->binding, status); xprt 682 net/sunrpc/rpcb_clnt.c struct rpc_xprt *xprt; xprt 694 net/sunrpc/rpcb_clnt.c xprt = xprt_get(task->tk_xprt); xprt 698 net/sunrpc/rpcb_clnt.c xprt->servername, clnt->cl_prog, clnt->cl_vers, xprt->prot); xprt 702 net/sunrpc/rpcb_clnt.c rpc_sleep_on_timeout(&xprt->binding, task, xprt 703 net/sunrpc/rpcb_clnt.c NULL, jiffies + xprt->bind_timeout); xprt 705 net/sunrpc/rpcb_clnt.c if (xprt_test_and_set_binding(xprt)) { xprt 708 net/sunrpc/rpcb_clnt.c xprt_put(xprt); xprt 713 net/sunrpc/rpcb_clnt.c if (xprt_bound(xprt)) { xprt 726 net/sunrpc/rpcb_clnt.c proc = rpcb_next_version[xprt->bind_index].rpc_proc; xprt 727 net/sunrpc/rpcb_clnt.c bind_version = rpcb_next_version[xprt->bind_index].rpc_vers; xprt 730 net/sunrpc/rpcb_clnt.c proc = rpcb_next_version6[xprt->bind_index].rpc_proc; xprt 731 net/sunrpc/rpcb_clnt.c bind_version = rpcb_next_version6[xprt->bind_index].rpc_vers; xprt 740 net/sunrpc/rpcb_clnt.c xprt->bind_index = 0; xprt 750 net/sunrpc/rpcb_clnt.c rpcb_clnt = rpcb_create(xprt->xprt_net, xprt 752 net/sunrpc/rpcb_clnt.c xprt->servername, sap, salen, xprt 753 net/sunrpc/rpcb_clnt.c xprt->prot, bind_version, xprt 771 net/sunrpc/rpcb_clnt.c map->r_prot = xprt->prot; xprt 773 net/sunrpc/rpcb_clnt.c map->r_xprt = xprt; xprt 779 net/sunrpc/rpcb_clnt.c map->r_netid = xprt->address_strings[RPC_DISPLAY_NETID]; xprt 805 net/sunrpc/rpcb_clnt.c xprt->stat.bind_count++; xprt 814 net/sunrpc/rpcb_clnt.c rpcb_wake_rpcbind_waiters(xprt, status); xprt 816 net/sunrpc/rpcb_clnt.c xprt_put(xprt); xprt 826 net/sunrpc/rpcb_clnt.c struct rpc_xprt *xprt = map->r_xprt; xprt 835 net/sunrpc/rpcb_clnt.c xprt->bind_index++; xprt 839 net/sunrpc/rpcb_clnt.c xprt->ops->set_port(xprt, 0); xprt 842 net/sunrpc/rpcb_clnt.c xprt->ops->set_port(xprt, 0); xprt 846 net/sunrpc/rpcb_clnt.c xprt->ops->set_port(xprt, map->r_port); xprt 847 net/sunrpc/rpcb_clnt.c xprt_set_bound(xprt); xprt 243 net/sunrpc/stats.c static int do_print_stats(struct rpc_clnt *clnt, struct rpc_xprt *xprt, void *seqv) xprt 247 net/sunrpc/stats.c xprt->ops->print_stats(xprt, seq); xprt 29 net/sunrpc/svc_xprt.c static struct svc_deferred_req *svc_deferred_dequeue(struct svc_xprt *xprt); xprt 33 net/sunrpc/svc_xprt.c static void svc_delete_xprt(struct svc_xprt *xprt); xprt 135 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = xprt 137 net/sunrpc/svc_xprt.c struct module *owner = xprt->xpt_class->xcl_owner; xprt 138 net/sunrpc/svc_xprt.c if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) xprt 139 net/sunrpc/svc_xprt.c svcauth_unix_info_release(xprt); xprt 140 net/sunrpc/svc_xprt.c put_cred(xprt->xpt_cred); xprt 141 net/sunrpc/svc_xprt.c put_net(xprt->xpt_net); xprt 143 net/sunrpc/svc_xprt.c if (xprt->xpt_bc_xprt) xprt 144 net/sunrpc/svc_xprt.c xprt_put(xprt->xpt_bc_xprt); xprt 145 net/sunrpc/svc_xprt.c if (xprt->xpt_bc_xps) xprt 146 net/sunrpc/svc_xprt.c xprt_switch_put(xprt->xpt_bc_xps); xprt 147 net/sunrpc/svc_xprt.c xprt->xpt_ops->xpo_free(xprt); xprt 151 net/sunrpc/svc_xprt.c void svc_xprt_put(struct svc_xprt *xprt) xprt 153 net/sunrpc/svc_xprt.c kref_put(&xprt->xpt_ref, svc_xprt_free); xprt 162 net/sunrpc/svc_xprt.c struct svc_xprt *xprt, struct svc_serv *serv) xprt 164 net/sunrpc/svc_xprt.c memset(xprt, 0, sizeof(*xprt)); xprt 165 net/sunrpc/svc_xprt.c xprt->xpt_class = xcl; xprt 166 net/sunrpc/svc_xprt.c xprt->xpt_ops = xcl->xcl_ops; xprt 167 net/sunrpc/svc_xprt.c kref_init(&xprt->xpt_ref); xprt 168 net/sunrpc/svc_xprt.c xprt->xpt_server = serv; xprt 169 net/sunrpc/svc_xprt.c INIT_LIST_HEAD(&xprt->xpt_list); xprt 170 net/sunrpc/svc_xprt.c INIT_LIST_HEAD(&xprt->xpt_ready); xprt 171 net/sunrpc/svc_xprt.c INIT_LIST_HEAD(&xprt->xpt_deferred); xprt 172 net/sunrpc/svc_xprt.c INIT_LIST_HEAD(&xprt->xpt_users); xprt 173 net/sunrpc/svc_xprt.c mutex_init(&xprt->xpt_mutex); xprt 174 net/sunrpc/svc_xprt.c spin_lock_init(&xprt->xpt_lock); xprt 175 net/sunrpc/svc_xprt.c set_bit(XPT_BUSY, &xprt->xpt_flags); xprt 176 net/sunrpc/svc_xprt.c xprt->xpt_net = get_net(net); xprt 177 net/sunrpc/svc_xprt.c strcpy(xprt->xpt_remotebuf, "uninitialized"); xprt 229 net/sunrpc/svc_xprt.c static void svc_xprt_received(struct svc_xprt *xprt) xprt 231 net/sunrpc/svc_xprt.c if (!test_bit(XPT_BUSY, &xprt->xpt_flags)) { xprt 232 net/sunrpc/svc_xprt.c WARN_ONCE(1, "xprt=0x%p already busy!", xprt); xprt 239 net/sunrpc/svc_xprt.c svc_xprt_get(xprt); xprt 241 net/sunrpc/svc_xprt.c clear_bit(XPT_BUSY, &xprt->xpt_flags); xprt 242 net/sunrpc/svc_xprt.c xprt->xpt_server->sv_ops->svo_enqueue_xprt(xprt); xprt 243 net/sunrpc/svc_xprt.c svc_xprt_put(xprt); xprt 314 net/sunrpc/svc_xprt.c void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt) xprt 316 net/sunrpc/svc_xprt.c memcpy(&rqstp->rq_addr, &xprt->xpt_remote, xprt->xpt_remotelen); xprt 317 net/sunrpc/svc_xprt.c rqstp->rq_addrlen = xprt->xpt_remotelen; xprt 323 net/sunrpc/svc_xprt.c memcpy(&rqstp->rq_daddr, &xprt->xpt_local, xprt->xpt_locallen); xprt 324 net/sunrpc/svc_xprt.c rqstp->rq_daddrlen = xprt->xpt_locallen; xprt 341 net/sunrpc/svc_xprt.c static bool svc_xprt_slots_in_range(struct svc_xprt *xprt) xprt 344 net/sunrpc/svc_xprt.c int nrqsts = atomic_read(&xprt->xpt_nr_rqsts); xprt 349 net/sunrpc/svc_xprt.c static bool svc_xprt_reserve_slot(struct svc_rqst *rqstp, struct svc_xprt *xprt) xprt 352 net/sunrpc/svc_xprt.c if (!svc_xprt_slots_in_range(xprt)) xprt 354 net/sunrpc/svc_xprt.c atomic_inc(&xprt->xpt_nr_rqsts); xprt 362 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = rqstp->rq_xprt; xprt 364 net/sunrpc/svc_xprt.c atomic_dec(&xprt->xpt_nr_rqsts); xprt 366 net/sunrpc/svc_xprt.c svc_xprt_enqueue(xprt); xprt 370 net/sunrpc/svc_xprt.c static bool svc_xprt_ready(struct svc_xprt *xprt) xprt 383 net/sunrpc/svc_xprt.c xpt_flags = READ_ONCE(xprt->xpt_flags); xprt 388 net/sunrpc/svc_xprt.c if (xprt->xpt_ops->xpo_has_wspace(xprt) && xprt 389 net/sunrpc/svc_xprt.c svc_xprt_slots_in_range(xprt)) xprt 391 net/sunrpc/svc_xprt.c trace_svc_xprt_no_write_space(xprt); xprt 397 net/sunrpc/svc_xprt.c void svc_xprt_do_enqueue(struct svc_xprt *xprt) xprt 403 net/sunrpc/svc_xprt.c if (!svc_xprt_ready(xprt)) xprt 411 net/sunrpc/svc_xprt.c if (test_and_set_bit(XPT_BUSY, &xprt->xpt_flags)) xprt 415 net/sunrpc/svc_xprt.c pool = svc_pool_for_cpu(xprt->xpt_server, cpu); xprt 420 net/sunrpc/svc_xprt.c list_add_tail(&xprt->xpt_ready, &pool->sp_sockets); xprt 439 net/sunrpc/svc_xprt.c trace_svc_xprt_do_enqueue(xprt, rqstp); xprt 448 net/sunrpc/svc_xprt.c void svc_xprt_enqueue(struct svc_xprt *xprt) xprt 450 net/sunrpc/svc_xprt.c if (test_bit(XPT_BUSY, &xprt->xpt_flags)) xprt 452 net/sunrpc/svc_xprt.c xprt->xpt_server->sv_ops->svo_enqueue_xprt(xprt); xprt 461 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = NULL; xprt 468 net/sunrpc/svc_xprt.c xprt = list_first_entry(&pool->sp_sockets, xprt 470 net/sunrpc/svc_xprt.c list_del_init(&xprt->xpt_ready); xprt 471 net/sunrpc/svc_xprt.c svc_xprt_get(xprt); xprt 475 net/sunrpc/svc_xprt.c return xprt; xprt 490 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = rqstp->rq_xprt; xprt 494 net/sunrpc/svc_xprt.c if (xprt && space < rqstp->rq_reserved) { xprt 495 net/sunrpc/svc_xprt.c atomic_sub((rqstp->rq_reserved - space), &xprt->xpt_reserved); xprt 498 net/sunrpc/svc_xprt.c svc_xprt_enqueue(xprt); xprt 505 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = rqstp->rq_xprt; xprt 507 net/sunrpc/svc_xprt.c xprt->xpt_ops->xpo_release_rqst(rqstp); xprt 530 net/sunrpc/svc_xprt.c svc_xprt_put(xprt); xprt 604 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = NULL; xprt 616 net/sunrpc/svc_xprt.c xprt = list_entry(serv->sv_tempsocks.prev, xprt 619 net/sunrpc/svc_xprt.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 620 net/sunrpc/svc_xprt.c svc_xprt_get(xprt); xprt 624 net/sunrpc/svc_xprt.c if (xprt) { xprt 625 net/sunrpc/svc_xprt.c svc_xprt_enqueue(xprt); xprt 626 net/sunrpc/svc_xprt.c svc_xprt_put(xprt); xprt 768 net/sunrpc/svc_xprt.c static int svc_handle_xprt(struct svc_rqst *rqstp, struct svc_xprt *xprt) xprt 773 net/sunrpc/svc_xprt.c if (test_bit(XPT_CLOSE, &xprt->xpt_flags)) { xprt 775 net/sunrpc/svc_xprt.c if (test_and_clear_bit(XPT_KILL_TEMP, &xprt->xpt_flags)) xprt 776 net/sunrpc/svc_xprt.c xprt->xpt_ops->xpo_kill_temp_xprt(xprt); xprt 777 net/sunrpc/svc_xprt.c svc_delete_xprt(xprt); xprt 781 net/sunrpc/svc_xprt.c if (test_bit(XPT_LISTENER, &xprt->xpt_flags)) { xprt 787 net/sunrpc/svc_xprt.c __module_get(xprt->xpt_class->xcl_owner); xprt 788 net/sunrpc/svc_xprt.c svc_check_conn_limits(xprt->xpt_server); xprt 789 net/sunrpc/svc_xprt.c newxpt = xprt->xpt_ops->xpo_accept(xprt); xprt 791 net/sunrpc/svc_xprt.c newxpt->xpt_cred = get_cred(xprt->xpt_cred); xprt 794 net/sunrpc/svc_xprt.c module_put(xprt->xpt_class->xcl_owner); xprt 795 net/sunrpc/svc_xprt.c } else if (svc_xprt_reserve_slot(rqstp, xprt)) { xprt 798 net/sunrpc/svc_xprt.c rqstp, rqstp->rq_pool->sp_id, xprt, xprt 799 net/sunrpc/svc_xprt.c kref_read(&xprt->xpt_ref)); xprt 800 net/sunrpc/svc_xprt.c rqstp->rq_deferred = svc_deferred_dequeue(xprt); xprt 804 net/sunrpc/svc_xprt.c len = xprt->xpt_ops->xpo_recvfrom(rqstp); xprt 807 net/sunrpc/svc_xprt.c atomic_add(rqstp->rq_reserved, &xprt->xpt_reserved); xprt 810 net/sunrpc/svc_xprt.c svc_xprt_received(xprt); xprt 812 net/sunrpc/svc_xprt.c trace_svc_handle_xprt(xprt, len); xprt 823 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = NULL; xprt 845 net/sunrpc/svc_xprt.c xprt = svc_get_next_xprt(rqstp, timeout); xprt 846 net/sunrpc/svc_xprt.c if (IS_ERR(xprt)) { xprt 847 net/sunrpc/svc_xprt.c err = PTR_ERR(xprt); xprt 851 net/sunrpc/svc_xprt.c len = svc_handle_xprt(rqstp, xprt); xprt 858 net/sunrpc/svc_xprt.c clear_bit(XPT_OLD, &xprt->xpt_flags); xprt 860 net/sunrpc/svc_xprt.c xprt->xpt_ops->xpo_secure_port(rqstp); xprt 892 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 896 net/sunrpc/svc_xprt.c xprt = rqstp->rq_xprt; xprt 897 net/sunrpc/svc_xprt.c if (!xprt) xprt 907 net/sunrpc/svc_xprt.c mutex_lock(&xprt->xpt_mutex); xprt 909 net/sunrpc/svc_xprt.c if (test_bit(XPT_DEAD, &xprt->xpt_flags) xprt 910 net/sunrpc/svc_xprt.c || test_bit(XPT_CLOSE, &xprt->xpt_flags)) xprt 913 net/sunrpc/svc_xprt.c len = xprt->xpt_ops->xpo_sendto(rqstp); xprt 914 net/sunrpc/svc_xprt.c mutex_unlock(&xprt->xpt_mutex); xprt 931 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 944 net/sunrpc/svc_xprt.c xprt = list_entry(le, struct svc_xprt, xpt_list); xprt 948 net/sunrpc/svc_xprt.c if (!test_and_set_bit(XPT_OLD, &xprt->xpt_flags)) xprt 950 net/sunrpc/svc_xprt.c if (kref_read(&xprt->xpt_ref) > 1 || xprt 951 net/sunrpc/svc_xprt.c test_bit(XPT_BUSY, &xprt->xpt_flags)) xprt 954 net/sunrpc/svc_xprt.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 955 net/sunrpc/svc_xprt.c dprintk("queuing xprt %p for closing\n", xprt); xprt 958 net/sunrpc/svc_xprt.c svc_xprt_enqueue(xprt); xprt 973 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 979 net/sunrpc/svc_xprt.c xprt = list_entry(le, struct svc_xprt, xpt_list); xprt 981 net/sunrpc/svc_xprt.c &xprt->xpt_local)) { xprt 982 net/sunrpc/svc_xprt.c dprintk("svc_age_temp_xprts_now: found %p\n", xprt); xprt 991 net/sunrpc/svc_xprt.c xprt = list_entry(le, struct svc_xprt, xpt_list); xprt 992 net/sunrpc/svc_xprt.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 993 net/sunrpc/svc_xprt.c set_bit(XPT_KILL_TEMP, &xprt->xpt_flags); xprt 995 net/sunrpc/svc_xprt.c xprt); xprt 996 net/sunrpc/svc_xprt.c svc_xprt_enqueue(xprt); xprt 1001 net/sunrpc/svc_xprt.c static void call_xpt_users(struct svc_xprt *xprt) xprt 1005 net/sunrpc/svc_xprt.c spin_lock(&xprt->xpt_lock); xprt 1006 net/sunrpc/svc_xprt.c while (!list_empty(&xprt->xpt_users)) { xprt 1007 net/sunrpc/svc_xprt.c u = list_first_entry(&xprt->xpt_users, struct svc_xpt_user, list); xprt 1011 net/sunrpc/svc_xprt.c spin_unlock(&xprt->xpt_lock); xprt 1017 net/sunrpc/svc_xprt.c static void svc_delete_xprt(struct svc_xprt *xprt) xprt 1019 net/sunrpc/svc_xprt.c struct svc_serv *serv = xprt->xpt_server; xprt 1023 net/sunrpc/svc_xprt.c if (test_and_set_bit(XPT_DEAD, &xprt->xpt_flags)) xprt 1026 net/sunrpc/svc_xprt.c dprintk("svc: svc_delete_xprt(%p)\n", xprt); xprt 1027 net/sunrpc/svc_xprt.c xprt->xpt_ops->xpo_detach(xprt); xprt 1028 net/sunrpc/svc_xprt.c if (xprt->xpt_bc_xprt) xprt 1029 net/sunrpc/svc_xprt.c xprt->xpt_bc_xprt->ops->close(xprt->xpt_bc_xprt); xprt 1032 net/sunrpc/svc_xprt.c list_del_init(&xprt->xpt_list); xprt 1033 net/sunrpc/svc_xprt.c WARN_ON_ONCE(!list_empty(&xprt->xpt_ready)); xprt 1034 net/sunrpc/svc_xprt.c if (test_bit(XPT_TEMP, &xprt->xpt_flags)) xprt 1038 net/sunrpc/svc_xprt.c while ((dr = svc_deferred_dequeue(xprt)) != NULL) xprt 1041 net/sunrpc/svc_xprt.c call_xpt_users(xprt); xprt 1042 net/sunrpc/svc_xprt.c svc_xprt_put(xprt); xprt 1045 net/sunrpc/svc_xprt.c void svc_close_xprt(struct svc_xprt *xprt) xprt 1047 net/sunrpc/svc_xprt.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 1048 net/sunrpc/svc_xprt.c if (test_and_set_bit(XPT_BUSY, &xprt->xpt_flags)) xprt 1057 net/sunrpc/svc_xprt.c svc_delete_xprt(xprt); xprt 1063 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 1067 net/sunrpc/svc_xprt.c list_for_each_entry(xprt, xprt_list, xpt_list) { xprt 1068 net/sunrpc/svc_xprt.c if (xprt->xpt_net != net) xprt 1071 net/sunrpc/svc_xprt.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 1072 net/sunrpc/svc_xprt.c svc_xprt_enqueue(xprt); xprt 1081 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 1089 net/sunrpc/svc_xprt.c list_for_each_entry_safe(xprt, tmp, &pool->sp_sockets, xpt_ready) { xprt 1090 net/sunrpc/svc_xprt.c if (xprt->xpt_net != net) xprt 1092 net/sunrpc/svc_xprt.c list_del_init(&xprt->xpt_ready); xprt 1094 net/sunrpc/svc_xprt.c return xprt; xprt 1103 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 1105 net/sunrpc/svc_xprt.c while ((xprt = svc_dequeue_net(serv, net))) { xprt 1106 net/sunrpc/svc_xprt.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 1107 net/sunrpc/svc_xprt.c svc_delete_xprt(xprt); xprt 1143 net/sunrpc/svc_xprt.c struct svc_xprt *xprt = dr->xprt; xprt 1145 net/sunrpc/svc_xprt.c spin_lock(&xprt->xpt_lock); xprt 1146 net/sunrpc/svc_xprt.c set_bit(XPT_DEFERRED, &xprt->xpt_flags); xprt 1147 net/sunrpc/svc_xprt.c if (too_many || test_bit(XPT_DEAD, &xprt->xpt_flags)) { xprt 1148 net/sunrpc/svc_xprt.c spin_unlock(&xprt->xpt_lock); xprt 1150 net/sunrpc/svc_xprt.c svc_xprt_put(xprt); xprt 1156 net/sunrpc/svc_xprt.c dr->xprt = NULL; xprt 1157 net/sunrpc/svc_xprt.c list_add(&dr->handle.recent, &xprt->xpt_deferred); xprt 1158 net/sunrpc/svc_xprt.c spin_unlock(&xprt->xpt_lock); xprt 1159 net/sunrpc/svc_xprt.c svc_xprt_enqueue(xprt); xprt 1160 net/sunrpc/svc_xprt.c svc_xprt_put(xprt); xprt 1205 net/sunrpc/svc_xprt.c dr->xprt = rqstp->rq_xprt; xprt 1238 net/sunrpc/svc_xprt.c static struct svc_deferred_req *svc_deferred_dequeue(struct svc_xprt *xprt) xprt 1242 net/sunrpc/svc_xprt.c if (!test_bit(XPT_DEFERRED, &xprt->xpt_flags)) xprt 1244 net/sunrpc/svc_xprt.c spin_lock(&xprt->xpt_lock); xprt 1245 net/sunrpc/svc_xprt.c if (!list_empty(&xprt->xpt_deferred)) { xprt 1246 net/sunrpc/svc_xprt.c dr = list_entry(xprt->xpt_deferred.next, xprt 1252 net/sunrpc/svc_xprt.c clear_bit(XPT_DEFERRED, &xprt->xpt_flags); xprt 1253 net/sunrpc/svc_xprt.c spin_unlock(&xprt->xpt_lock); xprt 1277 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 1285 net/sunrpc/svc_xprt.c list_for_each_entry(xprt, &serv->sv_permsocks, xpt_list) { xprt 1286 net/sunrpc/svc_xprt.c if (xprt->xpt_net != net) xprt 1288 net/sunrpc/svc_xprt.c if (strcmp(xprt->xpt_class->xcl_name, xcl_name)) xprt 1290 net/sunrpc/svc_xprt.c if (af != AF_UNSPEC && af != xprt->xpt_local.ss_family) xprt 1292 net/sunrpc/svc_xprt.c if (port != 0 && port != svc_xprt_local_port(xprt)) xprt 1294 net/sunrpc/svc_xprt.c found = xprt; xprt 1295 net/sunrpc/svc_xprt.c svc_xprt_get(xprt); xprt 1303 net/sunrpc/svc_xprt.c static int svc_one_xprt_name(const struct svc_xprt *xprt, xprt 1309 net/sunrpc/svc_xprt.c xprt->xpt_class->xcl_name, xprt 1310 net/sunrpc/svc_xprt.c svc_xprt_local_port(xprt)); xprt 1330 net/sunrpc/svc_xprt.c struct svc_xprt *xprt; xprt 1342 net/sunrpc/svc_xprt.c list_for_each_entry(xprt, &serv->sv_permsocks, xpt_list) { xprt 1343 net/sunrpc/svc_xprt.c len = svc_one_xprt_name(xprt, pos, buflen - totlen); xprt 349 net/sunrpc/svcauth_unix.c ip_map_cached_get(struct svc_xprt *xprt) xprt 354 net/sunrpc/svcauth_unix.c if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) { xprt 355 net/sunrpc/svcauth_unix.c spin_lock(&xprt->xpt_lock); xprt 356 net/sunrpc/svcauth_unix.c ipm = xprt->xpt_auth_cache; xprt 358 net/sunrpc/svcauth_unix.c sn = net_generic(xprt->xpt_net, sunrpc_net_id); xprt 365 net/sunrpc/svcauth_unix.c xprt->xpt_auth_cache = NULL; xprt 366 net/sunrpc/svcauth_unix.c spin_unlock(&xprt->xpt_lock); xprt 372 net/sunrpc/svcauth_unix.c spin_unlock(&xprt->xpt_lock); xprt 378 net/sunrpc/svcauth_unix.c ip_map_cached_put(struct svc_xprt *xprt, struct ip_map *ipm) xprt 380 net/sunrpc/svcauth_unix.c if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) { xprt 381 net/sunrpc/svcauth_unix.c spin_lock(&xprt->xpt_lock); xprt 382 net/sunrpc/svcauth_unix.c if (xprt->xpt_auth_cache == NULL) { xprt 384 net/sunrpc/svcauth_unix.c xprt->xpt_auth_cache = ipm; xprt 387 net/sunrpc/svcauth_unix.c spin_unlock(&xprt->xpt_lock); xprt 392 net/sunrpc/svcauth_unix.c sn = net_generic(xprt->xpt_net, sunrpc_net_id); xprt 672 net/sunrpc/svcauth_unix.c struct svc_xprt *xprt = rqstp->rq_xprt; xprt 673 net/sunrpc/svcauth_unix.c struct net *net = xprt->xpt_net; xprt 693 net/sunrpc/svcauth_unix.c ipm = ip_map_cached_get(xprt); xprt 713 net/sunrpc/svcauth_unix.c ip_map_cached_put(xprt, ipm); xprt 413 net/sunrpc/svcsock.c static int svc_tcp_has_wspace(struct svc_xprt *xprt) xprt 415 net/sunrpc/svcsock.c struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); xprt 417 net/sunrpc/svcsock.c if (test_bit(XPT_LISTENER, &xprt->xpt_flags)) xprt 422 net/sunrpc/svcsock.c static void svc_tcp_kill_temp_xprt(struct svc_xprt *xprt) xprt 431 net/sunrpc/svcsock.c svsk = container_of(xprt, struct svc_sock, sk_xprt); xprt 618 net/sunrpc/svcsock.c static int svc_udp_has_wspace(struct svc_xprt *xprt) xprt 620 net/sunrpc/svcsock.c struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); xprt 621 net/sunrpc/svcsock.c struct svc_serv *serv = xprt->xpt_server; xprt 636 net/sunrpc/svcsock.c static struct svc_xprt *svc_udp_accept(struct svc_xprt *xprt) xprt 642 net/sunrpc/svcsock.c static void svc_udp_kill_temp_xprt(struct svc_xprt *xprt) xprt 775 net/sunrpc/svcsock.c static struct svc_xprt *svc_tcp_accept(struct svc_xprt *xprt) xprt 777 net/sunrpc/svcsock.c struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); xprt 1480 net/sunrpc/svcsock.c static void svc_sock_detach(struct svc_xprt *xprt) xprt 1482 net/sunrpc/svcsock.c struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); xprt 1499 net/sunrpc/svcsock.c static void svc_tcp_sock_detach(struct svc_xprt *xprt) xprt 1501 net/sunrpc/svcsock.c struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); xprt 1505 net/sunrpc/svcsock.c svc_sock_detach(xprt); xprt 1507 net/sunrpc/svcsock.c if (!test_bit(XPT_LISTENER, &xprt->xpt_flags)) { xprt 1516 net/sunrpc/svcsock.c static void svc_sock_free(struct svc_xprt *xprt) xprt 1518 net/sunrpc/svcsock.c struct svc_sock *svsk = container_of(xprt, struct svc_sock, sk_xprt); xprt 70 net/sunrpc/xprt.c static void xprt_init(struct rpc_xprt *xprt, struct net *net); xprt 71 net/sunrpc/xprt.c static __be32 xprt_alloc_xid(struct rpc_xprt *xprt); xprt 72 net/sunrpc/xprt.c static void xprt_destroy(struct rpc_xprt *xprt); xprt 182 net/sunrpc/xprt.c static void xprt_clear_locked(struct rpc_xprt *xprt) xprt 184 net/sunrpc/xprt.c xprt->snd_task = NULL; xprt 185 net/sunrpc/xprt.c if (!test_bit(XPRT_CLOSE_WAIT, &xprt->state)) { xprt 187 net/sunrpc/xprt.c clear_bit(XPRT_LOCKED, &xprt->state); xprt 190 net/sunrpc/xprt.c queue_work(xprtiod_workqueue, &xprt->task_cleanup); xprt 202 net/sunrpc/xprt.c int xprt_reserve_xprt(struct rpc_xprt *xprt, struct rpc_task *task) xprt 206 net/sunrpc/xprt.c if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) { xprt 207 net/sunrpc/xprt.c if (task == xprt->snd_task) xprt 211 net/sunrpc/xprt.c if (test_bit(XPRT_WRITE_SPACE, &xprt->state)) xprt 213 net/sunrpc/xprt.c xprt->snd_task = task; xprt 218 net/sunrpc/xprt.c xprt_clear_locked(xprt); xprt 221 net/sunrpc/xprt.c task->tk_pid, xprt); xprt 224 net/sunrpc/xprt.c rpc_sleep_on_timeout(&xprt->sending, task, NULL, xprt 227 net/sunrpc/xprt.c rpc_sleep_on(&xprt->sending, task, NULL); xprt 233 net/sunrpc/xprt.c xprt_need_congestion_window_wait(struct rpc_xprt *xprt) xprt 235 net/sunrpc/xprt.c return test_bit(XPRT_CWND_WAIT, &xprt->state); xprt 239 net/sunrpc/xprt.c xprt_set_congestion_window_wait(struct rpc_xprt *xprt) xprt 241 net/sunrpc/xprt.c if (!list_empty(&xprt->xmit_queue)) { xprt 243 net/sunrpc/xprt.c if (list_first_entry(&xprt->xmit_queue, struct rpc_rqst, xprt 247 net/sunrpc/xprt.c set_bit(XPRT_CWND_WAIT, &xprt->state); xprt 251 net/sunrpc/xprt.c xprt_test_and_clear_congestion_window_wait(struct rpc_xprt *xprt) xprt 253 net/sunrpc/xprt.c if (!RPCXPRT_CONGESTED(xprt)) xprt 254 net/sunrpc/xprt.c clear_bit(XPRT_CWND_WAIT, &xprt->state); xprt 266 net/sunrpc/xprt.c int xprt_reserve_xprt_cong(struct rpc_xprt *xprt, struct rpc_task *task) xprt 270 net/sunrpc/xprt.c if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) { xprt 271 net/sunrpc/xprt.c if (task == xprt->snd_task) xprt 276 net/sunrpc/xprt.c xprt->snd_task = task; xprt 279 net/sunrpc/xprt.c if (test_bit(XPRT_WRITE_SPACE, &xprt->state)) xprt 281 net/sunrpc/xprt.c if (!xprt_need_congestion_window_wait(xprt)) { xprt 282 net/sunrpc/xprt.c xprt->snd_task = task; xprt 286 net/sunrpc/xprt.c xprt_clear_locked(xprt); xprt 288 net/sunrpc/xprt.c dprintk("RPC: %5u failed to lock transport %p\n", task->tk_pid, xprt); xprt 291 net/sunrpc/xprt.c rpc_sleep_on_timeout(&xprt->sending, task, NULL, xprt 294 net/sunrpc/xprt.c rpc_sleep_on(&xprt->sending, task, NULL); xprt 299 net/sunrpc/xprt.c static inline int xprt_lock_write(struct rpc_xprt *xprt, struct rpc_task *task) xprt 303 net/sunrpc/xprt.c if (test_bit(XPRT_LOCKED, &xprt->state) && xprt->snd_task == task) xprt 305 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 306 net/sunrpc/xprt.c retval = xprt->ops->reserve_xprt(xprt, task); xprt 307 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 313 net/sunrpc/xprt.c struct rpc_xprt *xprt = data; xprt 315 net/sunrpc/xprt.c xprt->snd_task = task; xprt 319 net/sunrpc/xprt.c static void __xprt_lock_write_next(struct rpc_xprt *xprt) xprt 321 net/sunrpc/xprt.c if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) xprt 323 net/sunrpc/xprt.c if (test_bit(XPRT_WRITE_SPACE, &xprt->state)) xprt 325 net/sunrpc/xprt.c if (rpc_wake_up_first_on_wq(xprtiod_workqueue, &xprt->sending, xprt 326 net/sunrpc/xprt.c __xprt_lock_write_func, xprt)) xprt 329 net/sunrpc/xprt.c xprt_clear_locked(xprt); xprt 332 net/sunrpc/xprt.c static void __xprt_lock_write_next_cong(struct rpc_xprt *xprt) xprt 334 net/sunrpc/xprt.c if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) xprt 336 net/sunrpc/xprt.c if (test_bit(XPRT_WRITE_SPACE, &xprt->state)) xprt 338 net/sunrpc/xprt.c if (xprt_need_congestion_window_wait(xprt)) xprt 340 net/sunrpc/xprt.c if (rpc_wake_up_first_on_wq(xprtiod_workqueue, &xprt->sending, xprt 341 net/sunrpc/xprt.c __xprt_lock_write_func, xprt)) xprt 344 net/sunrpc/xprt.c xprt_clear_locked(xprt); xprt 354 net/sunrpc/xprt.c void xprt_release_xprt(struct rpc_xprt *xprt, struct rpc_task *task) xprt 356 net/sunrpc/xprt.c if (xprt->snd_task == task) { xprt 357 net/sunrpc/xprt.c xprt_clear_locked(xprt); xprt 358 net/sunrpc/xprt.c __xprt_lock_write_next(xprt); xprt 371 net/sunrpc/xprt.c void xprt_release_xprt_cong(struct rpc_xprt *xprt, struct rpc_task *task) xprt 373 net/sunrpc/xprt.c if (xprt->snd_task == task) { xprt 374 net/sunrpc/xprt.c xprt_clear_locked(xprt); xprt 375 net/sunrpc/xprt.c __xprt_lock_write_next_cong(xprt); xprt 380 net/sunrpc/xprt.c static inline void xprt_release_write(struct rpc_xprt *xprt, struct rpc_task *task) xprt 382 net/sunrpc/xprt.c if (xprt->snd_task != task) xprt 384 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 385 net/sunrpc/xprt.c xprt->ops->release_xprt(xprt, task); xprt 386 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 394 net/sunrpc/xprt.c __xprt_get_cong(struct rpc_xprt *xprt, struct rpc_rqst *req) xprt 399 net/sunrpc/xprt.c req->rq_task->tk_pid, xprt->cong, xprt->cwnd); xprt 400 net/sunrpc/xprt.c if (RPCXPRT_CONGESTED(xprt)) { xprt 401 net/sunrpc/xprt.c xprt_set_congestion_window_wait(xprt); xprt 405 net/sunrpc/xprt.c xprt->cong += RPC_CWNDSCALE; xprt 414 net/sunrpc/xprt.c __xprt_put_cong(struct rpc_xprt *xprt, struct rpc_rqst *req) xprt 419 net/sunrpc/xprt.c xprt->cong -= RPC_CWNDSCALE; xprt 420 net/sunrpc/xprt.c xprt_test_and_clear_congestion_window_wait(xprt); xprt 421 net/sunrpc/xprt.c __xprt_lock_write_next_cong(xprt); xprt 432 net/sunrpc/xprt.c xprt_request_get_cong(struct rpc_xprt *xprt, struct rpc_rqst *req) xprt 438 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 439 net/sunrpc/xprt.c ret = __xprt_get_cong(xprt, req) != 0; xprt 440 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 459 net/sunrpc/xprt.c static void xprt_clear_congestion_window_wait_locked(struct rpc_xprt *xprt) xprt 461 net/sunrpc/xprt.c if (test_and_clear_bit(XPRT_CWND_WAIT, &xprt->state)) xprt 462 net/sunrpc/xprt.c __xprt_lock_write_next_cong(xprt); xprt 470 net/sunrpc/xprt.c xprt_clear_congestion_window_wait(struct rpc_xprt *xprt) xprt 472 net/sunrpc/xprt.c if (test_and_clear_bit(XPRT_CWND_WAIT, &xprt->state)) { xprt 473 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 474 net/sunrpc/xprt.c __xprt_lock_write_next_cong(xprt); xprt 475 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 495 net/sunrpc/xprt.c void xprt_adjust_cwnd(struct rpc_xprt *xprt, struct rpc_task *task, int result) xprt 498 net/sunrpc/xprt.c unsigned long cwnd = xprt->cwnd; xprt 500 net/sunrpc/xprt.c if (result >= 0 && cwnd <= xprt->cong) { xprt 504 net/sunrpc/xprt.c if (cwnd > RPC_MAXCWND(xprt)) xprt 505 net/sunrpc/xprt.c cwnd = RPC_MAXCWND(xprt); xprt 506 net/sunrpc/xprt.c __xprt_lock_write_next_cong(xprt); xprt 513 net/sunrpc/xprt.c xprt->cong, xprt->cwnd, cwnd); xprt 514 net/sunrpc/xprt.c xprt->cwnd = cwnd; xprt 515 net/sunrpc/xprt.c __xprt_put_cong(xprt, req); xprt 525 net/sunrpc/xprt.c void xprt_wake_pending_tasks(struct rpc_xprt *xprt, int status) xprt 528 net/sunrpc/xprt.c rpc_wake_up_status(&xprt->pending, status); xprt 530 net/sunrpc/xprt.c rpc_wake_up(&xprt->pending); xprt 542 net/sunrpc/xprt.c void xprt_wait_for_buffer_space(struct rpc_xprt *xprt) xprt 544 net/sunrpc/xprt.c set_bit(XPRT_WRITE_SPACE, &xprt->state); xprt 549 net/sunrpc/xprt.c xprt_clear_write_space_locked(struct rpc_xprt *xprt) xprt 551 net/sunrpc/xprt.c if (test_and_clear_bit(XPRT_WRITE_SPACE, &xprt->state)) { xprt 552 net/sunrpc/xprt.c __xprt_lock_write_next(xprt); xprt 554 net/sunrpc/xprt.c "xprt %p\n", xprt); xprt 566 net/sunrpc/xprt.c bool xprt_write_space(struct rpc_xprt *xprt) xprt 570 net/sunrpc/xprt.c if (!test_bit(XPRT_WRITE_SPACE, &xprt->state)) xprt 572 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 573 net/sunrpc/xprt.c ret = xprt_clear_write_space_locked(xprt); xprt 574 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 609 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 611 net/sunrpc/xprt.c if (likely(xprt && xprt_connected(xprt))) xprt 626 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 643 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 645 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 658 net/sunrpc/xprt.c struct rpc_xprt *xprt = xprt 662 net/sunrpc/xprt.c clear_bit(XPRT_CLOSE_WAIT, &xprt->state); xprt 663 net/sunrpc/xprt.c xprt->ops->close(xprt); xprt 664 net/sunrpc/xprt.c xprt_release_write(xprt, NULL); xprt 665 net/sunrpc/xprt.c wake_up_bit(&xprt->state, XPRT_LOCKED); xprt 674 net/sunrpc/xprt.c void xprt_disconnect_done(struct rpc_xprt *xprt) xprt 676 net/sunrpc/xprt.c dprintk("RPC: disconnected transport %p\n", xprt); xprt 677 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 678 net/sunrpc/xprt.c xprt_clear_connected(xprt); xprt 679 net/sunrpc/xprt.c xprt_clear_write_space_locked(xprt); xprt 680 net/sunrpc/xprt.c xprt_clear_congestion_window_wait_locked(xprt); xprt 681 net/sunrpc/xprt.c xprt_wake_pending_tasks(xprt, -ENOTCONN); xprt 682 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 691 net/sunrpc/xprt.c void xprt_force_disconnect(struct rpc_xprt *xprt) xprt 694 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 695 net/sunrpc/xprt.c set_bit(XPRT_CLOSE_WAIT, &xprt->state); xprt 697 net/sunrpc/xprt.c if (test_and_set_bit(XPRT_LOCKED, &xprt->state) == 0) xprt 698 net/sunrpc/xprt.c queue_work(xprtiod_workqueue, &xprt->task_cleanup); xprt 699 net/sunrpc/xprt.c else if (xprt->snd_task) xprt 700 net/sunrpc/xprt.c rpc_wake_up_queued_task_set_status(&xprt->pending, xprt 701 net/sunrpc/xprt.c xprt->snd_task, -ENOTCONN); xprt 702 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 707 net/sunrpc/xprt.c xprt_connect_cookie(struct rpc_xprt *xprt) xprt 709 net/sunrpc/xprt.c return READ_ONCE(xprt->connect_cookie); xprt 716 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 718 net/sunrpc/xprt.c return req->rq_connect_cookie != xprt_connect_cookie(xprt) || xprt 719 net/sunrpc/xprt.c !xprt_connected(xprt); xprt 733 net/sunrpc/xprt.c void xprt_conditional_disconnect(struct rpc_xprt *xprt, unsigned int cookie) xprt 736 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 737 net/sunrpc/xprt.c if (cookie != xprt->connect_cookie) xprt 739 net/sunrpc/xprt.c if (test_bit(XPRT_CLOSING, &xprt->state)) xprt 741 net/sunrpc/xprt.c set_bit(XPRT_CLOSE_WAIT, &xprt->state); xprt 743 net/sunrpc/xprt.c if (test_and_set_bit(XPRT_LOCKED, &xprt->state) == 0) xprt 744 net/sunrpc/xprt.c queue_work(xprtiod_workqueue, &xprt->task_cleanup); xprt 745 net/sunrpc/xprt.c xprt_wake_pending_tasks(xprt, -EAGAIN); xprt 747 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 751 net/sunrpc/xprt.c xprt_has_timer(const struct rpc_xprt *xprt) xprt 753 net/sunrpc/xprt.c return xprt->idle_timeout != 0; xprt 757 net/sunrpc/xprt.c xprt_schedule_autodisconnect(struct rpc_xprt *xprt) xprt 758 net/sunrpc/xprt.c __must_hold(&xprt->transport_lock) xprt 760 net/sunrpc/xprt.c xprt->last_used = jiffies; xprt 761 net/sunrpc/xprt.c if (RB_EMPTY_ROOT(&xprt->recv_queue) && xprt_has_timer(xprt)) xprt 762 net/sunrpc/xprt.c mod_timer(&xprt->timer, xprt->last_used + xprt->idle_timeout); xprt 768 net/sunrpc/xprt.c struct rpc_xprt *xprt = from_timer(xprt, t, timer); xprt 770 net/sunrpc/xprt.c if (!RB_EMPTY_ROOT(&xprt->recv_queue)) xprt 773 net/sunrpc/xprt.c xprt->last_used = jiffies; xprt 774 net/sunrpc/xprt.c if (test_and_set_bit(XPRT_LOCKED, &xprt->state)) xprt 776 net/sunrpc/xprt.c queue_work(xprtiod_workqueue, &xprt->task_cleanup); xprt 779 net/sunrpc/xprt.c bool xprt_lock_connect(struct rpc_xprt *xprt, xprt 785 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 786 net/sunrpc/xprt.c if (!test_bit(XPRT_LOCKED, &xprt->state)) xprt 788 net/sunrpc/xprt.c if (xprt->snd_task != task) xprt 790 net/sunrpc/xprt.c xprt->snd_task = cookie; xprt 793 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 797 net/sunrpc/xprt.c void xprt_unlock_connect(struct rpc_xprt *xprt, void *cookie) xprt 799 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 800 net/sunrpc/xprt.c if (xprt->snd_task != cookie) xprt 802 net/sunrpc/xprt.c if (!test_bit(XPRT_LOCKED, &xprt->state)) xprt 804 net/sunrpc/xprt.c xprt->snd_task =NULL; xprt 805 net/sunrpc/xprt.c xprt->ops->release_xprt(xprt, NULL); xprt 806 net/sunrpc/xprt.c xprt_schedule_autodisconnect(xprt); xprt 808 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 809 net/sunrpc/xprt.c wake_up_bit(&xprt->state, XPRT_LOCKED); xprt 819 net/sunrpc/xprt.c struct rpc_xprt *xprt = task->tk_rqstp->rq_xprt; xprt 822 net/sunrpc/xprt.c xprt, (xprt_connected(xprt) ? "is" : "is not")); xprt 824 net/sunrpc/xprt.c if (!xprt_bound(xprt)) { xprt 828 net/sunrpc/xprt.c if (!xprt_lock_write(xprt, task)) xprt 831 net/sunrpc/xprt.c if (test_and_clear_bit(XPRT_CLOSE_WAIT, &xprt->state)) xprt 832 net/sunrpc/xprt.c xprt->ops->close(xprt); xprt 834 net/sunrpc/xprt.c if (!xprt_connected(xprt)) { xprt 835 net/sunrpc/xprt.c task->tk_rqstp->rq_connect_cookie = xprt->connect_cookie; xprt 836 net/sunrpc/xprt.c rpc_sleep_on_timeout(&xprt->pending, task, NULL, xprt 839 net/sunrpc/xprt.c if (test_bit(XPRT_CLOSING, &xprt->state)) xprt 841 net/sunrpc/xprt.c if (xprt_test_and_set_connecting(xprt)) xprt 844 net/sunrpc/xprt.c if (!xprt_connected(xprt)) { xprt 845 net/sunrpc/xprt.c xprt->stat.connect_start = jiffies; xprt 846 net/sunrpc/xprt.c xprt->ops->connect(xprt, task); xprt 848 net/sunrpc/xprt.c xprt_clear_connecting(xprt); xprt 850 net/sunrpc/xprt.c rpc_wake_up_queued_task(&xprt->pending, task); xprt 853 net/sunrpc/xprt.c xprt_release_write(xprt, task); xprt 861 net/sunrpc/xprt.c unsigned long xprt_reconnect_delay(const struct rpc_xprt *xprt) xprt 865 net/sunrpc/xprt.c start = xprt->stat.connect_start + xprt->reestablish_timeout; xprt 878 net/sunrpc/xprt.c void xprt_reconnect_backoff(struct rpc_xprt *xprt, unsigned long init_to) xprt 880 net/sunrpc/xprt.c xprt->reestablish_timeout <<= 1; xprt 881 net/sunrpc/xprt.c if (xprt->reestablish_timeout > xprt->max_reconnect_timeout) xprt 882 net/sunrpc/xprt.c xprt->reestablish_timeout = xprt->max_reconnect_timeout; xprt 883 net/sunrpc/xprt.c if (xprt->reestablish_timeout < init_to) xprt 884 net/sunrpc/xprt.c xprt->reestablish_timeout = init_to; xprt 904 net/sunrpc/xprt.c xprt_request_rb_find(struct rpc_xprt *xprt, __be32 xid) xprt 906 net/sunrpc/xprt.c struct rb_node *n = xprt->recv_queue.rb_node; xprt 926 net/sunrpc/xprt.c xprt_request_rb_insert(struct rpc_xprt *xprt, struct rpc_rqst *new) xprt 928 net/sunrpc/xprt.c struct rb_node **p = &xprt->recv_queue.rb_node; xprt 948 net/sunrpc/xprt.c rb_insert_color(&new->rq_recv, &xprt->recv_queue); xprt 952 net/sunrpc/xprt.c xprt_request_rb_remove(struct rpc_xprt *xprt, struct rpc_rqst *req) xprt 954 net/sunrpc/xprt.c rb_erase(&req->rq_recv, &xprt->recv_queue); xprt 964 net/sunrpc/xprt.c struct rpc_rqst *xprt_lookup_rqst(struct rpc_xprt *xprt, __be32 xid) xprt 968 net/sunrpc/xprt.c entry = xprt_request_rb_find(xprt, xid); xprt 970 net/sunrpc/xprt.c trace_xprt_lookup_rqst(xprt, xid, 0); xprt 977 net/sunrpc/xprt.c trace_xprt_lookup_rqst(xprt, xid, -ENOENT); xprt 978 net/sunrpc/xprt.c xprt->stat.bad_xids++; xprt 1047 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1053 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1060 net/sunrpc/xprt.c xprt_request_rb_insert(xprt, req); xprt 1062 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1065 net/sunrpc/xprt.c del_singleshot_timer_sync(&xprt->timer); xprt 1114 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1118 net/sunrpc/xprt.c trace_xprt_complete_rqst(xprt, req->rq_xid, copied); xprt 1120 net/sunrpc/xprt.c xprt->stat.recvs++; xprt 1128 net/sunrpc/xprt.c rpc_wake_up_queued_task(&xprt->pending, task); xprt 1135 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1140 net/sunrpc/xprt.c trace_xprt_timer(xprt, req->rq_xid, task->tk_status); xprt 1142 net/sunrpc/xprt.c if (xprt->ops->timer) xprt 1143 net/sunrpc/xprt.c xprt->ops->timer(xprt, task); xprt 1199 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1208 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1210 net/sunrpc/xprt.c xprt->ops->wait_for_reply_request(task); xprt 1217 net/sunrpc/xprt.c rpc_wake_up_queued_task_set_status(&xprt->pending, xprt 1220 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1239 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1243 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1249 net/sunrpc/xprt.c xprt_clear_congestion_window_wait(xprt); xprt 1250 net/sunrpc/xprt.c list_for_each_entry(pos, &xprt->xmit_queue, rq_xmit) { xprt 1260 net/sunrpc/xprt.c list_for_each_entry(pos, &xprt->xmit_queue, rq_xmit) { xprt 1272 net/sunrpc/xprt.c list_for_each_entry(pos, &xprt->xmit_queue, rq_xmit) { xprt 1281 net/sunrpc/xprt.c list_add_tail(&req->rq_xmit, &xprt->xmit_queue); xprt 1286 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1326 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1328 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1330 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1344 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1349 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1354 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1356 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1359 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1373 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1375 net/sunrpc/xprt.c if (xprt->ops->prepare_request) xprt 1376 net/sunrpc/xprt.c xprt->ops->prepare_request(req); xprt 1399 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1403 net/sunrpc/xprt.c if (!xprt_lock_write(xprt, task)) { xprt 1406 net/sunrpc/xprt.c rpc_wake_up_queued_task_set_status(&xprt->sending, xprt 1432 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1461 net/sunrpc/xprt.c connect_cookie = xprt->connect_cookie; xprt 1462 net/sunrpc/xprt.c status = xprt->ops->send_request(req); xprt 1472 net/sunrpc/xprt.c xprt_inject_disconnect(xprt); xprt 1475 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 1477 net/sunrpc/xprt.c xprt->stat.sends++; xprt 1478 net/sunrpc/xprt.c xprt->stat.req_u += xprt->stat.sends - xprt->stat.recvs; xprt 1479 net/sunrpc/xprt.c xprt->stat.bklog_u += xprt->backlog.qlen; xprt 1480 net/sunrpc/xprt.c xprt->stat.sending_u += xprt->sending.qlen; xprt 1481 net/sunrpc/xprt.c xprt->stat.pending_u += xprt->pending.qlen; xprt 1482 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 1488 net/sunrpc/xprt.c rpc_wake_up_queued_task_set_status(&xprt->sending, task, status); xprt 1505 net/sunrpc/xprt.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1508 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1509 net/sunrpc/xprt.c while (!list_empty(&xprt->xmit_queue)) { xprt 1510 net/sunrpc/xprt.c next = list_first_entry(&xprt->xmit_queue, xprt 1513 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1518 net/sunrpc/xprt.c spin_lock(&xprt->queue_lock); xprt 1528 net/sunrpc/xprt.c spin_unlock(&xprt->queue_lock); xprt 1531 net/sunrpc/xprt.c static void xprt_add_backlog(struct rpc_xprt *xprt, struct rpc_task *task) xprt 1533 net/sunrpc/xprt.c set_bit(XPRT_CONGESTED, &xprt->state); xprt 1534 net/sunrpc/xprt.c rpc_sleep_on(&xprt->backlog, task, NULL); xprt 1537 net/sunrpc/xprt.c static void xprt_wake_up_backlog(struct rpc_xprt *xprt) xprt 1539 net/sunrpc/xprt.c if (rpc_wake_up_next(&xprt->backlog) == NULL) xprt 1540 net/sunrpc/xprt.c clear_bit(XPRT_CONGESTED, &xprt->state); xprt 1543 net/sunrpc/xprt.c static bool xprt_throttle_congested(struct rpc_xprt *xprt, struct rpc_task *task) xprt 1547 net/sunrpc/xprt.c if (!test_bit(XPRT_CONGESTED, &xprt->state)) xprt 1549 net/sunrpc/xprt.c spin_lock(&xprt->reserve_lock); xprt 1550 net/sunrpc/xprt.c if (test_bit(XPRT_CONGESTED, &xprt->state)) { xprt 1551 net/sunrpc/xprt.c rpc_sleep_on(&xprt->backlog, task, NULL); xprt 1554 net/sunrpc/xprt.c spin_unlock(&xprt->reserve_lock); xprt 1559 net/sunrpc/xprt.c static struct rpc_rqst *xprt_dynamic_alloc_slot(struct rpc_xprt *xprt) xprt 1563 net/sunrpc/xprt.c if (xprt->num_reqs >= xprt->max_reqs) xprt 1565 net/sunrpc/xprt.c ++xprt->num_reqs; xprt 1566 net/sunrpc/xprt.c spin_unlock(&xprt->reserve_lock); xprt 1568 net/sunrpc/xprt.c spin_lock(&xprt->reserve_lock); xprt 1571 net/sunrpc/xprt.c --xprt->num_reqs; xprt 1577 net/sunrpc/xprt.c static bool xprt_dynamic_free_slot(struct rpc_xprt *xprt, struct rpc_rqst *req) xprt 1579 net/sunrpc/xprt.c if (xprt->num_reqs > xprt->min_reqs) { xprt 1580 net/sunrpc/xprt.c --xprt->num_reqs; xprt 1587 net/sunrpc/xprt.c void xprt_alloc_slot(struct rpc_xprt *xprt, struct rpc_task *task) xprt 1591 net/sunrpc/xprt.c spin_lock(&xprt->reserve_lock); xprt 1592 net/sunrpc/xprt.c if (!list_empty(&xprt->free)) { xprt 1593 net/sunrpc/xprt.c req = list_entry(xprt->free.next, struct rpc_rqst, rq_list); xprt 1597 net/sunrpc/xprt.c req = xprt_dynamic_alloc_slot(xprt); xprt 1607 net/sunrpc/xprt.c xprt_add_backlog(xprt, task); xprt 1613 net/sunrpc/xprt.c spin_unlock(&xprt->reserve_lock); xprt 1616 net/sunrpc/xprt.c xprt->stat.max_slots = max_t(unsigned int, xprt->stat.max_slots, xprt 1617 net/sunrpc/xprt.c xprt->num_reqs); xprt 1618 net/sunrpc/xprt.c spin_unlock(&xprt->reserve_lock); xprt 1625 net/sunrpc/xprt.c void xprt_free_slot(struct rpc_xprt *xprt, struct rpc_rqst *req) xprt 1627 net/sunrpc/xprt.c spin_lock(&xprt->reserve_lock); xprt 1628 net/sunrpc/xprt.c if (!xprt_dynamic_free_slot(xprt, req)) { xprt 1630 net/sunrpc/xprt.c list_add(&req->rq_list, &xprt->free); xprt 1632 net/sunrpc/xprt.c xprt_wake_up_backlog(xprt); xprt 1633 net/sunrpc/xprt.c spin_unlock(&xprt->reserve_lock); xprt 1637 net/sunrpc/xprt.c static void xprt_free_all_slots(struct rpc_xprt *xprt) xprt 1640 net/sunrpc/xprt.c while (!list_empty(&xprt->free)) { xprt 1641 net/sunrpc/xprt.c req = list_first_entry(&xprt->free, struct rpc_rqst, rq_list); xprt 1651 net/sunrpc/xprt.c struct rpc_xprt *xprt; xprt 1655 net/sunrpc/xprt.c xprt = kzalloc(size, GFP_KERNEL); xprt 1656 net/sunrpc/xprt.c if (xprt == NULL) xprt 1659 net/sunrpc/xprt.c xprt_init(xprt, net); xprt 1665 net/sunrpc/xprt.c list_add(&req->rq_list, &xprt->free); xprt 1668 net/sunrpc/xprt.c xprt->max_reqs = max_alloc; xprt 1670 net/sunrpc/xprt.c xprt->max_reqs = num_prealloc; xprt 1671 net/sunrpc/xprt.c xprt->min_reqs = num_prealloc; xprt 1672 net/sunrpc/xprt.c xprt->num_reqs = num_prealloc; xprt 1674 net/sunrpc/xprt.c return xprt; xprt 1677 net/sunrpc/xprt.c xprt_free(xprt); xprt 1683 net/sunrpc/xprt.c void xprt_free(struct rpc_xprt *xprt) xprt 1685 net/sunrpc/xprt.c put_net(xprt->xprt_net); xprt 1686 net/sunrpc/xprt.c xprt_free_all_slots(xprt); xprt 1687 net/sunrpc/xprt.c kfree_rcu(xprt, rcu); xprt 1692 net/sunrpc/xprt.c xprt_init_connect_cookie(struct rpc_rqst *req, struct rpc_xprt *xprt) xprt 1694 net/sunrpc/xprt.c req->rq_connect_cookie = xprt_connect_cookie(xprt) - 1; xprt 1698 net/sunrpc/xprt.c xprt_alloc_xid(struct rpc_xprt *xprt) xprt 1702 net/sunrpc/xprt.c spin_lock(&xprt->reserve_lock); xprt 1703 net/sunrpc/xprt.c xid = (__force __be32)xprt->xid++; xprt 1704 net/sunrpc/xprt.c spin_unlock(&xprt->reserve_lock); xprt 1709 net/sunrpc/xprt.c xprt_init_xid(struct rpc_xprt *xprt) xprt 1711 net/sunrpc/xprt.c xprt->xid = prandom_u32(); xprt 1717 net/sunrpc/xprt.c struct rpc_xprt *xprt = task->tk_xprt; xprt 1721 net/sunrpc/xprt.c req->rq_xprt = xprt; xprt 1723 net/sunrpc/xprt.c req->rq_xid = xprt_alloc_xid(xprt); xprt 1724 net/sunrpc/xprt.c xprt_init_connect_cookie(req, xprt); xprt 1738 net/sunrpc/xprt.c xprt_do_reserve(struct rpc_xprt *xprt, struct rpc_task *task) xprt 1740 net/sunrpc/xprt.c xprt->ops->alloc_slot(xprt, task); xprt 1755 net/sunrpc/xprt.c struct rpc_xprt *xprt = task->tk_xprt; xprt 1762 net/sunrpc/xprt.c if (!xprt_throttle_congested(xprt, task)) xprt 1763 net/sunrpc/xprt.c xprt_do_reserve(xprt, task); xprt 1777 net/sunrpc/xprt.c struct rpc_xprt *xprt = task->tk_xprt; xprt 1784 net/sunrpc/xprt.c xprt_do_reserve(xprt, task); xprt 1794 net/sunrpc/xprt.c struct rpc_xprt *xprt; xprt 1799 net/sunrpc/xprt.c xprt = task->tk_xprt; xprt 1800 net/sunrpc/xprt.c xprt_release_write(xprt, task); xprt 1805 net/sunrpc/xprt.c xprt = req->rq_xprt; xprt 1807 net/sunrpc/xprt.c spin_lock(&xprt->transport_lock); xprt 1808 net/sunrpc/xprt.c xprt->ops->release_xprt(xprt, task); xprt 1809 net/sunrpc/xprt.c if (xprt->ops->release_request) xprt 1810 net/sunrpc/xprt.c xprt->ops->release_request(task); xprt 1811 net/sunrpc/xprt.c xprt_schedule_autodisconnect(xprt); xprt 1812 net/sunrpc/xprt.c spin_unlock(&xprt->transport_lock); xprt 1814 net/sunrpc/xprt.c xprt->ops->buf_free(task); xprt 1815 net/sunrpc/xprt.c xprt_inject_disconnect(xprt); xprt 1826 net/sunrpc/xprt.c xprt->ops->free_slot(xprt, req); xprt 1849 net/sunrpc/xprt.c static void xprt_init(struct rpc_xprt *xprt, struct net *net) xprt 1851 net/sunrpc/xprt.c kref_init(&xprt->kref); xprt 1853 net/sunrpc/xprt.c spin_lock_init(&xprt->transport_lock); xprt 1854 net/sunrpc/xprt.c spin_lock_init(&xprt->reserve_lock); xprt 1855 net/sunrpc/xprt.c spin_lock_init(&xprt->queue_lock); xprt 1857 net/sunrpc/xprt.c INIT_LIST_HEAD(&xprt->free); xprt 1858 net/sunrpc/xprt.c xprt->recv_queue = RB_ROOT; xprt 1859 net/sunrpc/xprt.c INIT_LIST_HEAD(&xprt->xmit_queue); xprt 1861 net/sunrpc/xprt.c spin_lock_init(&xprt->bc_pa_lock); xprt 1862 net/sunrpc/xprt.c INIT_LIST_HEAD(&xprt->bc_pa_list); xprt 1864 net/sunrpc/xprt.c INIT_LIST_HEAD(&xprt->xprt_switch); xprt 1866 net/sunrpc/xprt.c xprt->last_used = jiffies; xprt 1867 net/sunrpc/xprt.c xprt->cwnd = RPC_INITCWND; xprt 1868 net/sunrpc/xprt.c xprt->bind_index = 0; xprt 1870 net/sunrpc/xprt.c rpc_init_wait_queue(&xprt->binding, "xprt_binding"); xprt 1871 net/sunrpc/xprt.c rpc_init_wait_queue(&xprt->pending, "xprt_pending"); xprt 1872 net/sunrpc/xprt.c rpc_init_wait_queue(&xprt->sending, "xprt_sending"); xprt 1873 net/sunrpc/xprt.c rpc_init_priority_wait_queue(&xprt->backlog, "xprt_backlog"); xprt 1875 net/sunrpc/xprt.c xprt_init_xid(xprt); xprt 1877 net/sunrpc/xprt.c xprt->xprt_net = get_net(net); xprt 1887 net/sunrpc/xprt.c struct rpc_xprt *xprt; xprt 1902 net/sunrpc/xprt.c xprt = t->setup(args); xprt 1903 net/sunrpc/xprt.c if (IS_ERR(xprt)) { xprt 1905 net/sunrpc/xprt.c -PTR_ERR(xprt)); xprt 1909 net/sunrpc/xprt.c xprt->idle_timeout = 0; xprt 1910 net/sunrpc/xprt.c INIT_WORK(&xprt->task_cleanup, xprt_autoclose); xprt 1911 net/sunrpc/xprt.c if (xprt_has_timer(xprt)) xprt 1912 net/sunrpc/xprt.c timer_setup(&xprt->timer, xprt_init_autodisconnect, 0); xprt 1914 net/sunrpc/xprt.c timer_setup(&xprt->timer, NULL, 0); xprt 1917 net/sunrpc/xprt.c xprt_destroy(xprt); xprt 1920 net/sunrpc/xprt.c xprt->servername = kstrdup(args->servername, GFP_KERNEL); xprt 1921 net/sunrpc/xprt.c if (xprt->servername == NULL) { xprt 1922 net/sunrpc/xprt.c xprt_destroy(xprt); xprt 1926 net/sunrpc/xprt.c rpc_xprt_debugfs_register(xprt); xprt 1928 net/sunrpc/xprt.c dprintk("RPC: created transport %p with %u slots\n", xprt, xprt 1929 net/sunrpc/xprt.c xprt->max_reqs); xprt 1931 net/sunrpc/xprt.c return xprt; xprt 1936 net/sunrpc/xprt.c struct rpc_xprt *xprt = xprt 1939 net/sunrpc/xprt.c rpc_xprt_debugfs_unregister(xprt); xprt 1940 net/sunrpc/xprt.c rpc_destroy_wait_queue(&xprt->binding); xprt 1941 net/sunrpc/xprt.c rpc_destroy_wait_queue(&xprt->pending); xprt 1942 net/sunrpc/xprt.c rpc_destroy_wait_queue(&xprt->sending); xprt 1943 net/sunrpc/xprt.c rpc_destroy_wait_queue(&xprt->backlog); xprt 1944 net/sunrpc/xprt.c kfree(xprt->servername); xprt 1948 net/sunrpc/xprt.c xprt_destroy_backchannel(xprt, UINT_MAX); xprt 1953 net/sunrpc/xprt.c xprt->ops->destroy(xprt); xprt 1961 net/sunrpc/xprt.c static void xprt_destroy(struct rpc_xprt *xprt) xprt 1963 net/sunrpc/xprt.c dprintk("RPC: destroying transport %p\n", xprt); xprt 1968 net/sunrpc/xprt.c wait_on_bit_lock(&xprt->state, XPRT_LOCKED, TASK_UNINTERRUPTIBLE); xprt 1970 net/sunrpc/xprt.c del_timer_sync(&xprt->timer); xprt 1976 net/sunrpc/xprt.c INIT_WORK(&xprt->task_cleanup, xprt_destroy_cb); xprt 1977 net/sunrpc/xprt.c schedule_work(&xprt->task_cleanup); xprt 1990 net/sunrpc/xprt.c struct rpc_xprt *xprt_get(struct rpc_xprt *xprt) xprt 1992 net/sunrpc/xprt.c if (xprt != NULL && kref_get_unless_zero(&xprt->kref)) xprt 1993 net/sunrpc/xprt.c return xprt; xprt 2003 net/sunrpc/xprt.c void xprt_put(struct rpc_xprt *xprt) xprt 2005 net/sunrpc/xprt.c if (xprt != NULL) xprt 2006 net/sunrpc/xprt.c kref_put(&xprt->kref, xprt_destroy_kref); xprt 30 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt) xprt 32 net/sunrpc/xprtmultipath.c if (unlikely(xprt_get(xprt) == NULL)) xprt 34 net/sunrpc/xprtmultipath.c list_add_tail_rcu(&xprt->xprt_switch, &xps->xps_xprt_list); xprt 37 net/sunrpc/xprtmultipath.c xps->xps_net = xprt->xprt_net; xprt 50 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt) xprt 52 net/sunrpc/xprtmultipath.c if (xprt == NULL) xprt 55 net/sunrpc/xprtmultipath.c if (xps->xps_net == xprt->xprt_net || xps->xps_net == NULL) xprt 56 net/sunrpc/xprtmultipath.c xprt_switch_add_xprt_locked(xps, xprt); xprt 61 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt) xprt 63 net/sunrpc/xprtmultipath.c if (unlikely(xprt == NULL)) xprt 70 net/sunrpc/xprtmultipath.c list_del_rcu(&xprt->xprt_switch); xprt 81 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt) xprt 84 net/sunrpc/xprtmultipath.c xprt_switch_remove_xprt_locked(xps, xprt); xprt 86 net/sunrpc/xprtmultipath.c xprt_put(xprt); xprt 97 net/sunrpc/xprtmultipath.c struct rpc_xprt_switch *xprt_switch_alloc(struct rpc_xprt *xprt, xprt 111 net/sunrpc/xprtmultipath.c xprt_switch_add_xprt_locked(xps, xprt); xprt 121 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt; xprt 123 net/sunrpc/xprtmultipath.c xprt = list_first_entry(&xps->xps_xprt_list, xprt 125 net/sunrpc/xprtmultipath.c xprt_switch_remove_xprt_locked(xps, xprt); xprt 127 net/sunrpc/xprtmultipath.c xprt_put(xprt); xprt 199 net/sunrpc/xprtmultipath.c bool xprt_is_active(const struct rpc_xprt *xprt) xprt 201 net/sunrpc/xprtmultipath.c return kref_read(&xprt->kref) != 0; xprt 334 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt; xprt 340 net/sunrpc/xprtmultipath.c xprt = __xprt_switch_find_next_entry_roundrobin(head, cur); xprt 341 net/sunrpc/xprtmultipath.c if (!xprt) xprt 343 net/sunrpc/xprtmultipath.c xprt_queuelen = atomic_long_read(&xprt->queuelen); xprt 349 net/sunrpc/xprtmultipath.c cur = xprt; xprt 351 net/sunrpc/xprtmultipath.c return xprt; xprt 494 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt; xprt 497 net/sunrpc/xprtmultipath.c xprt = xprt_iter_get_helper(xpi, xprt_iter_ops(xpi)->xpi_xprt); xprt 499 net/sunrpc/xprtmultipath.c return xprt; xprt 511 net/sunrpc/xprtmultipath.c struct rpc_xprt *xprt; xprt 514 net/sunrpc/xprtmultipath.c xprt = xprt_iter_get_helper(xpi, xprt_iter_ops(xpi)->xpi_next); xprt 516 net/sunrpc/xprtmultipath.c return xprt; xprt 29 net/sunrpc/xprtrdma/backchannel.c int xprt_rdma_bc_setup(struct rpc_xprt *xprt, unsigned int reqs) xprt 31 net/sunrpc/xprtrdma/backchannel.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 44 net/sunrpc/xprtrdma/backchannel.c size_t xprt_rdma_bc_maxpayload(struct rpc_xprt *xprt) xprt 46 net/sunrpc/xprtrdma/backchannel.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 55 net/sunrpc/xprtrdma/backchannel.c unsigned int xprt_rdma_bc_max_slots(struct rpc_xprt *xprt) xprt 103 net/sunrpc/xprtrdma/backchannel.c struct rpc_xprt *xprt = rqst->rq_xprt; xprt 104 net/sunrpc/xprtrdma/backchannel.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 108 net/sunrpc/xprtrdma/backchannel.c if (!xprt_connected(xprt)) xprt 111 net/sunrpc/xprtrdma/backchannel.c if (!xprt_request_get_cong(xprt, rqst)) xprt 126 net/sunrpc/xprtrdma/backchannel.c xprt_rdma_close(xprt); xprt 135 net/sunrpc/xprtrdma/backchannel.c void xprt_rdma_bc_destroy(struct rpc_xprt *xprt, unsigned int reqs) xprt 139 net/sunrpc/xprtrdma/backchannel.c spin_lock(&xprt->bc_pa_lock); xprt 140 net/sunrpc/xprtrdma/backchannel.c list_for_each_entry_safe(rqst, tmp, &xprt->bc_pa_list, rq_bc_pa_list) { xprt 142 net/sunrpc/xprtrdma/backchannel.c spin_unlock(&xprt->bc_pa_lock); xprt 146 net/sunrpc/xprtrdma/backchannel.c spin_lock(&xprt->bc_pa_lock); xprt 148 net/sunrpc/xprtrdma/backchannel.c spin_unlock(&xprt->bc_pa_lock); xprt 158 net/sunrpc/xprtrdma/backchannel.c struct rpc_xprt *xprt = rqst->rq_xprt; xprt 163 net/sunrpc/xprtrdma/backchannel.c spin_lock(&xprt->bc_pa_lock); xprt 164 net/sunrpc/xprtrdma/backchannel.c list_add_tail(&rqst->rq_bc_pa_list, &xprt->bc_pa_list); xprt 165 net/sunrpc/xprtrdma/backchannel.c spin_unlock(&xprt->bc_pa_lock); xprt 166 net/sunrpc/xprtrdma/backchannel.c xprt_put(xprt); xprt 171 net/sunrpc/xprtrdma/backchannel.c struct rpc_xprt *xprt = &r_xprt->rx_xprt; xprt 176 net/sunrpc/xprtrdma/backchannel.c spin_lock(&xprt->bc_pa_lock); xprt 177 net/sunrpc/xprtrdma/backchannel.c rqst = list_first_entry_or_null(&xprt->bc_pa_list, struct rpc_rqst, xprt 182 net/sunrpc/xprtrdma/backchannel.c spin_unlock(&xprt->bc_pa_lock); xprt 186 net/sunrpc/xprtrdma/backchannel.c spin_unlock(&xprt->bc_pa_lock); xprt 190 net/sunrpc/xprtrdma/backchannel.c if (xprt->bc_alloc_count >= RPCRDMA_BACKWARD_WRS) xprt 198 net/sunrpc/xprtrdma/backchannel.c xprt->bc_alloc_count++; xprt 200 net/sunrpc/xprtrdma/backchannel.c rqst->rq_xprt = xprt; xprt 220 net/sunrpc/xprtrdma/backchannel.c struct rpc_xprt *xprt = &r_xprt->rx_xprt; xprt 262 net/sunrpc/xprtrdma/backchannel.c bc_serv = xprt->bc_serv; xprt 263 net/sunrpc/xprtrdma/backchannel.c xprt_get(xprt); xprt 275 net/sunrpc/xprtrdma/backchannel.c xprt_force_disconnect(xprt); xprt 1260 net/sunrpc/xprtrdma/rpc_rdma.c struct rpc_xprt *xprt = &r_xprt->rx_xprt; xprt 1281 net/sunrpc/xprtrdma/rpc_rdma.c spin_lock(&xprt->queue_lock); xprt 1284 net/sunrpc/xprtrdma/rpc_rdma.c spin_unlock(&xprt->queue_lock); xprt 1315 net/sunrpc/xprtrdma/rpc_rdma.c struct rpc_xprt *xprt = &r_xprt->rx_xprt; xprt 1325 net/sunrpc/xprtrdma/rpc_rdma.c if (xprt->reestablish_timeout) xprt 1326 net/sunrpc/xprtrdma/rpc_rdma.c xprt->reestablish_timeout = 0; xprt 1348 net/sunrpc/xprtrdma/rpc_rdma.c spin_lock(&xprt->queue_lock); xprt 1349 net/sunrpc/xprtrdma/rpc_rdma.c rqst = xprt_lookup_rqst(xprt, rep->rr_xid); xprt 1353 net/sunrpc/xprtrdma/rpc_rdma.c spin_unlock(&xprt->queue_lock); xprt 1360 net/sunrpc/xprtrdma/rpc_rdma.c spin_lock(&xprt->transport_lock); xprt 1362 net/sunrpc/xprtrdma/rpc_rdma.c xprt->cwnd = credits << RPC_CWNDSHIFT; xprt 1363 net/sunrpc/xprtrdma/rpc_rdma.c spin_unlock(&xprt->transport_lock); xprt 1391 net/sunrpc/xprtrdma/rpc_rdma.c spin_unlock(&xprt->queue_lock); xprt 27 net/sunrpc/xprtrdma/svc_rdma_backchannel.c int svc_rdma_handle_bc_reply(struct rpc_xprt *xprt, __be32 *rdma_resp, xprt 30 net/sunrpc/xprtrdma/svc_rdma_backchannel.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 56 net/sunrpc/xprtrdma/svc_rdma_backchannel.c spin_lock(&xprt->queue_lock); xprt 57 net/sunrpc/xprtrdma/svc_rdma_backchannel.c req = xprt_lookup_rqst(xprt, xid); xprt 67 net/sunrpc/xprtrdma/svc_rdma_backchannel.c spin_unlock(&xprt->queue_lock); xprt 75 net/sunrpc/xprtrdma/svc_rdma_backchannel.c spin_lock(&xprt->transport_lock); xprt 76 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->cwnd = credits << RPC_CWNDSHIFT; xprt 77 net/sunrpc/xprtrdma/svc_rdma_backchannel.c spin_unlock(&xprt->transport_lock); xprt 79 net/sunrpc/xprtrdma/svc_rdma_backchannel.c spin_lock(&xprt->queue_lock); xprt 86 net/sunrpc/xprtrdma/svc_rdma_backchannel.c spin_unlock(&xprt->queue_lock); xprt 92 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt, src->iov_len); xprt 97 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt, be32_to_cpu(xid)); xprt 174 net/sunrpc/xprtrdma/svc_rdma_backchannel.c struct rpc_xprt *xprt = rqst->rq_xprt; xprt 175 net/sunrpc/xprtrdma/svc_rdma_backchannel.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 242 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_rdma_bc_close(struct rpc_xprt *xprt) xprt 244 net/sunrpc/xprtrdma/svc_rdma_backchannel.c dprintk("svcrdma: %s: xprt %p\n", __func__, xprt); xprt 246 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_disconnect_done(xprt); xprt 247 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->cwnd = RPC_CWNDSHIFT; xprt 251 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_rdma_bc_put(struct rpc_xprt *xprt) xprt 253 net/sunrpc/xprtrdma/svc_rdma_backchannel.c dprintk("svcrdma: %s: xprt %p\n", __func__, xprt); xprt 255 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_free(xprt); xprt 285 net/sunrpc/xprtrdma/svc_rdma_backchannel.c struct rpc_xprt *xprt; xprt 288 net/sunrpc/xprtrdma/svc_rdma_backchannel.c if (args->addrlen > sizeof(xprt->addr)) { xprt 293 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt = xprt_alloc(args->net, sizeof(*new_xprt), xprt 296 net/sunrpc/xprtrdma/svc_rdma_backchannel.c if (!xprt) { xprt 302 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->timeout = &xprt_rdma_bc_timeout; xprt 303 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_set_bound(xprt); xprt 304 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_set_connected(xprt); xprt 305 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->bind_timeout = RPCRDMA_BIND_TO; xprt 306 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->reestablish_timeout = RPCRDMA_INIT_REEST_TO; xprt 307 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->idle_timeout = RPCRDMA_IDLE_DISC_TO; xprt 309 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->prot = XPRT_TRANSPORT_BC_RDMA; xprt 310 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->ops = &xprt_rdma_bc_procs; xprt 312 net/sunrpc/xprtrdma/svc_rdma_backchannel.c memcpy(&xprt->addr, args->dstaddr, args->addrlen); xprt 313 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->addrlen = args->addrlen; xprt 314 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_rdma_format_addresses(xprt, (struct sockaddr *)&xprt->addr); xprt 315 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->resvport = 0; xprt 317 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->max_payload = xprt_rdma_max_inline_read; xprt 319 net/sunrpc/xprtrdma/svc_rdma_backchannel.c new_xprt = rpcx_to_rdmax(xprt); xprt 320 net/sunrpc/xprtrdma/svc_rdma_backchannel.c new_xprt->rx_buf.rb_bc_max_requests = xprt->max_reqs; xprt 322 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_get(xprt); xprt 323 net/sunrpc/xprtrdma/svc_rdma_backchannel.c args->bc_xprt->xpt_bc_xprt = xprt; xprt 324 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt->bc_xprt = args->bc_xprt; xprt 327 net/sunrpc/xprtrdma/svc_rdma_backchannel.c xprt_get(xprt); xprt 328 net/sunrpc/xprtrdma/svc_rdma_backchannel.c return xprt; xprt 236 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c struct svc_xprt *xprt = rqstp->rq_xprt; xprt 238 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c container_of(xprt, struct svcxprt_rdma, sc_xprt); xprt 669 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c static void svc_rdma_send_error(struct svcxprt_rdma *xprt, xprt 677 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c ctxt = svc_rdma_send_ctxt_get(xprt); xprt 684 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c *p++ = xprt->sc_fc_credits; xprt 698 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c svc_rdma_sync_reply_hdr(xprt, ctxt, length); xprt 701 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c ret = svc_rdma_send(xprt, &ctxt->sc_send_wr); xprt 703 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c svc_rdma_send_ctxt_put(xprt, ctxt); xprt 711 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c static bool svc_rdma_is_backchannel_reply(struct svc_xprt *xprt, xprt 716 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c if (!xprt->xpt_bc_xprt) xprt 772 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c struct svc_xprt *xprt = rqstp->rq_xprt; xprt 774 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c container_of(xprt, struct svcxprt_rdma, sc_xprt); xprt 792 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c clear_bit(XPT_DATA, &xprt->xpt_flags); xprt 817 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c if (svc_rdma_is_backchannel_reply(xprt, p)) { xprt 818 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c ret = svc_rdma_handle_bc_reply(xprt->xpt_bc_xprt, p, xprt 832 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c svc_xprt_copy_addrs(rqstp, xprt); xprt 301 net/sunrpc/xprtrdma/svc_rdma_rw.c struct svc_xprt *xprt = &rdma->sc_xprt; xprt 339 net/sunrpc/xprtrdma/svc_rdma_rw.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 822 net/sunrpc/xprtrdma/svc_rdma_sendto.c struct svc_xprt *xprt = rqstp->rq_xprt; xprt 824 net/sunrpc/xprtrdma/svc_rdma_sendto.c container_of(xprt, struct svcxprt_rdma, sc_xprt); xprt 891 net/sunrpc/xprtrdma/svc_rdma_sendto.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 73 net/sunrpc/xprtrdma/svc_rdma_transport.c static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt); xprt 74 net/sunrpc/xprtrdma/svc_rdma_transport.c static void svc_rdma_detach(struct svc_xprt *xprt); xprt 75 net/sunrpc/xprtrdma/svc_rdma_transport.c static void svc_rdma_free(struct svc_xprt *xprt); xprt 76 net/sunrpc/xprtrdma/svc_rdma_transport.c static int svc_rdma_has_wspace(struct svc_xprt *xprt); xprt 104 net/sunrpc/xprtrdma/svc_rdma_transport.c struct svc_xprt *xprt = context; xprt 106 net/sunrpc/xprtrdma/svc_rdma_transport.c trace_svcrdma_qp_error(event, (struct sockaddr *)&xprt->xpt_remote); xprt 122 net/sunrpc/xprtrdma/svc_rdma_transport.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 123 net/sunrpc/xprtrdma/svc_rdma_transport.c svc_xprt_enqueue(xprt); xprt 269 net/sunrpc/xprtrdma/svc_rdma_transport.c struct svc_xprt *xprt = &rdma->sc_xprt; xprt 276 net/sunrpc/xprtrdma/svc_rdma_transport.c svc_xprt_get(xprt); xprt 278 net/sunrpc/xprtrdma/svc_rdma_transport.c "cm_id=%p\n", xprt, cma_id); xprt 280 net/sunrpc/xprtrdma/svc_rdma_transport.c svc_xprt_enqueue(xprt); xprt 284 net/sunrpc/xprtrdma/svc_rdma_transport.c xprt, cma_id); xprt 285 net/sunrpc/xprtrdma/svc_rdma_transport.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 286 net/sunrpc/xprtrdma/svc_rdma_transport.c svc_xprt_enqueue(xprt); xprt 287 net/sunrpc/xprtrdma/svc_rdma_transport.c svc_xprt_put(xprt); xprt 291 net/sunrpc/xprtrdma/svc_rdma_transport.c "event = %s (%d)\n", cma_id, xprt, xprt 293 net/sunrpc/xprtrdma/svc_rdma_transport.c set_bit(XPT_CLOSE, &xprt->xpt_flags); xprt 294 net/sunrpc/xprtrdma/svc_rdma_transport.c svc_xprt_enqueue(xprt); xprt 295 net/sunrpc/xprtrdma/svc_rdma_transport.c svc_xprt_put(xprt); xprt 387 net/sunrpc/xprtrdma/svc_rdma_transport.c static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt) xprt 399 net/sunrpc/xprtrdma/svc_rdma_transport.c listen_rdma = container_of(xprt, struct svcxprt_rdma, sc_xprt); xprt 400 net/sunrpc/xprtrdma/svc_rdma_transport.c clear_bit(XPT_CONN, &xprt->xpt_flags); xprt 572 net/sunrpc/xprtrdma/svc_rdma_transport.c static void svc_rdma_detach(struct svc_xprt *xprt) xprt 575 net/sunrpc/xprtrdma/svc_rdma_transport.c container_of(xprt, struct svcxprt_rdma, sc_xprt); xprt 585 net/sunrpc/xprtrdma/svc_rdma_transport.c struct svc_xprt *xprt = &rdma->sc_xprt; xprt 587 net/sunrpc/xprtrdma/svc_rdma_transport.c trace_svcrdma_xprt_free(xprt); xprt 595 net/sunrpc/xprtrdma/svc_rdma_transport.c if (xprt->xpt_bc_xprt) { xprt 596 net/sunrpc/xprtrdma/svc_rdma_transport.c xprt_put(xprt->xpt_bc_xprt); xprt 597 net/sunrpc/xprtrdma/svc_rdma_transport.c xprt->xpt_bc_xprt = NULL; xprt 623 net/sunrpc/xprtrdma/svc_rdma_transport.c static void svc_rdma_free(struct svc_xprt *xprt) xprt 626 net/sunrpc/xprtrdma/svc_rdma_transport.c container_of(xprt, struct svcxprt_rdma, sc_xprt); xprt 632 net/sunrpc/xprtrdma/svc_rdma_transport.c static int svc_rdma_has_wspace(struct svc_xprt *xprt) xprt 635 net/sunrpc/xprtrdma/svc_rdma_transport.c container_of(xprt, struct svcxprt_rdma, sc_xprt); xprt 653 net/sunrpc/xprtrdma/svc_rdma_transport.c static void svc_rdma_kill_temp_xprt(struct svc_xprt *xprt) xprt 160 net/sunrpc/xprtrdma/transport.c xprt_rdma_format_addresses4(struct rpc_xprt *xprt, struct sockaddr *sap) xprt 166 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); xprt 168 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA; xprt 172 net/sunrpc/xprtrdma/transport.c xprt_rdma_format_addresses6(struct rpc_xprt *xprt, struct sockaddr *sap) xprt 178 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); xprt 180 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_NETID] = RPCBIND_NETID_RDMA6; xprt 184 net/sunrpc/xprtrdma/transport.c xprt_rdma_format_addresses(struct rpc_xprt *xprt, struct sockaddr *sap) xprt 190 net/sunrpc/xprtrdma/transport.c xprt_rdma_format_addresses4(xprt, sap); xprt 193 net/sunrpc/xprtrdma/transport.c xprt_rdma_format_addresses6(xprt, sap); xprt 201 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_ADDR] = kstrdup(buf, GFP_KERNEL); xprt 204 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_PORT] = kstrdup(buf, GFP_KERNEL); xprt 207 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_HEX_PORT] = kstrdup(buf, GFP_KERNEL); xprt 209 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_PROTO] = "rdma"; xprt 213 net/sunrpc/xprtrdma/transport.c xprt_rdma_free_addresses(struct rpc_xprt *xprt) xprt 223 net/sunrpc/xprtrdma/transport.c kfree(xprt->address_strings[i]); xprt 240 net/sunrpc/xprtrdma/transport.c struct rpc_xprt *xprt = &r_xprt->rx_xprt; xprt 244 net/sunrpc/xprtrdma/transport.c xprt_clear_connecting(xprt); xprt 246 net/sunrpc/xprtrdma/transport.c if (!xprt_test_and_set_connected(xprt)) { xprt 247 net/sunrpc/xprtrdma/transport.c xprt->stat.connect_count++; xprt 248 net/sunrpc/xprtrdma/transport.c xprt->stat.connect_time += (long)jiffies - xprt 249 net/sunrpc/xprtrdma/transport.c xprt->stat.connect_start; xprt 250 net/sunrpc/xprtrdma/transport.c xprt_wake_pending_tasks(xprt, -EAGAIN); xprt 253 net/sunrpc/xprtrdma/transport.c if (xprt_test_and_clear_connected(xprt)) xprt 254 net/sunrpc/xprtrdma/transport.c xprt_wake_pending_tasks(xprt, rc); xprt 266 net/sunrpc/xprtrdma/transport.c xprt_rdma_inject_disconnect(struct rpc_xprt *xprt) xprt 268 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 282 net/sunrpc/xprtrdma/transport.c xprt_rdma_destroy(struct rpc_xprt *xprt) xprt 284 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 294 net/sunrpc/xprtrdma/transport.c xprt_rdma_free_addresses(xprt); xprt 295 net/sunrpc/xprtrdma/transport.c xprt_free(xprt); xprt 314 net/sunrpc/xprtrdma/transport.c struct rpc_xprt *xprt; xprt 319 net/sunrpc/xprtrdma/transport.c if (args->addrlen > sizeof(xprt->addr)) xprt 322 net/sunrpc/xprtrdma/transport.c xprt = xprt_alloc(args->net, sizeof(struct rpcrdma_xprt), 0, 0); xprt 323 net/sunrpc/xprtrdma/transport.c if (!xprt) xprt 326 net/sunrpc/xprtrdma/transport.c xprt->timeout = &xprt_rdma_default_timeout; xprt 327 net/sunrpc/xprtrdma/transport.c xprt->connect_timeout = xprt->timeout->to_initval; xprt 328 net/sunrpc/xprtrdma/transport.c xprt->max_reconnect_timeout = xprt->timeout->to_maxval; xprt 329 net/sunrpc/xprtrdma/transport.c xprt->bind_timeout = RPCRDMA_BIND_TO; xprt 330 net/sunrpc/xprtrdma/transport.c xprt->reestablish_timeout = RPCRDMA_INIT_REEST_TO; xprt 331 net/sunrpc/xprtrdma/transport.c xprt->idle_timeout = RPCRDMA_IDLE_DISC_TO; xprt 333 net/sunrpc/xprtrdma/transport.c xprt->resvport = 0; /* privileged port not needed */ xprt 334 net/sunrpc/xprtrdma/transport.c xprt->ops = &xprt_rdma_procs; xprt 343 net/sunrpc/xprtrdma/transport.c xprt->prot = IPPROTO_TCP; xprt 344 net/sunrpc/xprtrdma/transport.c xprt->addrlen = args->addrlen; xprt 345 net/sunrpc/xprtrdma/transport.c memcpy(&xprt->addr, sap, xprt->addrlen); xprt 348 net/sunrpc/xprtrdma/transport.c xprt_set_bound(xprt); xprt 349 net/sunrpc/xprtrdma/transport.c xprt_rdma_format_addresses(xprt, sap); xprt 351 net/sunrpc/xprtrdma/transport.c new_xprt = rpcx_to_rdmax(xprt); xprt 367 net/sunrpc/xprtrdma/transport.c xprt->max_payload = frwr_maxpages(new_xprt); xprt 368 net/sunrpc/xprtrdma/transport.c if (xprt->max_payload == 0) xprt 370 net/sunrpc/xprtrdma/transport.c xprt->max_payload <<= PAGE_SHIFT; xprt 372 net/sunrpc/xprtrdma/transport.c __func__, xprt->max_payload); xprt 378 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 379 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_PORT]); xprt 381 net/sunrpc/xprtrdma/transport.c return xprt; xprt 392 net/sunrpc/xprtrdma/transport.c xprt_rdma_free_addresses(xprt); xprt 393 net/sunrpc/xprtrdma/transport.c xprt_free(xprt); xprt 406 net/sunrpc/xprtrdma/transport.c void xprt_rdma_close(struct rpc_xprt *xprt) xprt 408 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 417 net/sunrpc/xprtrdma/transport.c xprt_clear_connected(xprt); xprt 431 net/sunrpc/xprtrdma/transport.c spin_lock(&xprt->transport_lock); xprt 433 net/sunrpc/xprtrdma/transport.c xprt->cong = 0; xprt 434 net/sunrpc/xprtrdma/transport.c xprt->cwnd = RPC_CWNDSHIFT; xprt 435 net/sunrpc/xprtrdma/transport.c spin_unlock(&xprt->transport_lock); xprt 438 net/sunrpc/xprtrdma/transport.c xprt->reestablish_timeout = 0; xprt 439 net/sunrpc/xprtrdma/transport.c ++xprt->connect_cookie; xprt 440 net/sunrpc/xprtrdma/transport.c xprt_disconnect_done(xprt); xprt 451 net/sunrpc/xprtrdma/transport.c xprt_rdma_set_port(struct rpc_xprt *xprt, u16 port) xprt 453 net/sunrpc/xprtrdma/transport.c struct sockaddr *sap = (struct sockaddr *)&xprt->addr; xprt 457 net/sunrpc/xprtrdma/transport.c __func__, xprt, xprt 458 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 459 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_PORT], xprt 464 net/sunrpc/xprtrdma/transport.c kfree(xprt->address_strings[RPC_DISPLAY_PORT]); xprt 466 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_PORT] = kstrdup(buf, GFP_KERNEL); xprt 468 net/sunrpc/xprtrdma/transport.c kfree(xprt->address_strings[RPC_DISPLAY_HEX_PORT]); xprt 470 net/sunrpc/xprtrdma/transport.c xprt->address_strings[RPC_DISPLAY_HEX_PORT] = kstrdup(buf, GFP_KERNEL); xprt 487 net/sunrpc/xprtrdma/transport.c xprt_rdma_timer(struct rpc_xprt *xprt, struct rpc_task *task) xprt 489 net/sunrpc/xprtrdma/transport.c xprt_force_disconnect(xprt); xprt 499 net/sunrpc/xprtrdma/transport.c static void xprt_rdma_set_connect_timeout(struct rpc_xprt *xprt, xprt 503 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 507 net/sunrpc/xprtrdma/transport.c spin_lock(&xprt->transport_lock); xprt 509 net/sunrpc/xprtrdma/transport.c if (connect_timeout < xprt->connect_timeout) { xprt 513 net/sunrpc/xprtrdma/transport.c to = *xprt->timeout; xprt 520 net/sunrpc/xprtrdma/transport.c xprt->timeout = &r_xprt->rx_timeout; xprt 521 net/sunrpc/xprtrdma/transport.c xprt->connect_timeout = connect_timeout; xprt 524 net/sunrpc/xprtrdma/transport.c if (reconnect_timeout < xprt->max_reconnect_timeout) xprt 525 net/sunrpc/xprtrdma/transport.c xprt->max_reconnect_timeout = reconnect_timeout; xprt 527 net/sunrpc/xprtrdma/transport.c spin_unlock(&xprt->transport_lock); xprt 537 net/sunrpc/xprtrdma/transport.c xprt_rdma_connect(struct rpc_xprt *xprt, struct rpc_task *task) xprt 539 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 546 net/sunrpc/xprtrdma/transport.c delay = xprt_reconnect_delay(xprt); xprt 547 net/sunrpc/xprtrdma/transport.c xprt_reconnect_backoff(xprt, RPCRDMA_INIT_REEST_TO); xprt 563 net/sunrpc/xprtrdma/transport.c xprt_rdma_alloc_slot(struct rpc_xprt *xprt, struct rpc_task *task) xprt 565 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 576 net/sunrpc/xprtrdma/transport.c set_bit(XPRT_CONGESTED, &xprt->state); xprt 577 net/sunrpc/xprtrdma/transport.c rpc_sleep_on(&xprt->backlog, task, NULL); xprt 588 net/sunrpc/xprtrdma/transport.c xprt_rdma_free_slot(struct rpc_xprt *xprt, struct rpc_rqst *rqst) xprt 591 net/sunrpc/xprtrdma/transport.c container_of(xprt, struct rpcrdma_xprt, rx_xprt); xprt 595 net/sunrpc/xprtrdma/transport.c if (unlikely(!rpc_wake_up_next(&xprt->backlog))) xprt 596 net/sunrpc/xprtrdma/transport.c clear_bit(XPRT_CONGESTED, &xprt->state); xprt 693 net/sunrpc/xprtrdma/transport.c struct rpc_xprt *xprt = rqst->rq_xprt; xprt 695 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 703 net/sunrpc/xprtrdma/transport.c if (!xprt_connected(xprt)) xprt 706 net/sunrpc/xprtrdma/transport.c if (!xprt_request_get_cong(xprt, rqst)) xprt 714 net/sunrpc/xprtrdma/transport.c if (rqst->rq_connect_cookie == xprt->connect_cookie) xprt 734 net/sunrpc/xprtrdma/transport.c xprt_rdma_close(xprt); xprt 738 net/sunrpc/xprtrdma/transport.c void xprt_rdma_print_stats(struct rpc_xprt *xprt, struct seq_file *seq) xprt 740 net/sunrpc/xprtrdma/transport.c struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); xprt 743 net/sunrpc/xprtrdma/transport.c if (xprt_connected(xprt)) xprt 744 net/sunrpc/xprtrdma/transport.c idle_time = (long)(jiffies - xprt->last_used) / HZ; xprt 749 net/sunrpc/xprtrdma/transport.c xprt->stat.bind_count, xprt 750 net/sunrpc/xprtrdma/transport.c xprt->stat.connect_count, xprt 751 net/sunrpc/xprtrdma/transport.c xprt->stat.connect_time / HZ, xprt 753 net/sunrpc/xprtrdma/transport.c xprt->stat.sends, xprt 754 net/sunrpc/xprtrdma/transport.c xprt->stat.recvs, xprt 755 net/sunrpc/xprtrdma/transport.c xprt->stat.bad_xids, xprt 756 net/sunrpc/xprtrdma/transport.c xprt->stat.req_u, xprt 757 net/sunrpc/xprtrdma/transport.c xprt->stat.bklog_u); xprt 780 net/sunrpc/xprtrdma/transport.c xprt_rdma_enable_swap(struct rpc_xprt *xprt) xprt 786 net/sunrpc/xprtrdma/transport.c xprt_rdma_disable_swap(struct rpc_xprt *xprt) xprt 223 net/sunrpc/xprtrdma/verbs.c struct rpc_xprt *xprt = &r_xprt->rx_xprt; xprt 251 net/sunrpc/xprtrdma/verbs.c xprt_force_disconnect(xprt); xprt 258 net/sunrpc/xprtrdma/verbs.c ++xprt->connect_cookie; xprt 280 net/sunrpc/xprtrdma/verbs.c xprt_force_disconnect(xprt); xprt 294 net/sunrpc/xprtrdma/verbs.c rpcrdma_create_id(struct rpcrdma_xprt *xprt, struct rpcrdma_ia *ia) xprt 300 net/sunrpc/xprtrdma/verbs.c trace_xprtrdma_conn_start(xprt); xprt 304 net/sunrpc/xprtrdma/verbs.c id = rdma_create_id(xprt->rx_xprt.xprt_net, rpcrdma_cm_event_handler, xprt 305 net/sunrpc/xprtrdma/verbs.c xprt, RDMA_PS_TCP, IB_QPT_RC); xprt 311 net/sunrpc/xprtrdma/verbs.c (struct sockaddr *)&xprt->rx_xprt.addr, xprt 317 net/sunrpc/xprtrdma/verbs.c trace_xprtrdma_conn_tout(xprt); xprt 331 net/sunrpc/xprtrdma/verbs.c trace_xprtrdma_conn_tout(xprt); xprt 357 net/sunrpc/xprtrdma/verbs.c rpcrdma_ia_open(struct rpcrdma_xprt *xprt) xprt 359 net/sunrpc/xprtrdma/verbs.c struct rpcrdma_ia *ia = &xprt->rx_ia; xprt 362 net/sunrpc/xprtrdma/verbs.c ia->ri_id = rpcrdma_create_id(xprt, ia); xprt 700 net/sunrpc/xprtrdma/verbs.c struct rpc_xprt *xprt = &r_xprt->rx_xprt; xprt 727 net/sunrpc/xprtrdma/verbs.c xprt_clear_connected(xprt); xprt 735 net/sunrpc/xprtrdma/verbs.c if (xprt->reestablish_timeout < RPCRDMA_INIT_REEST_TO) xprt 736 net/sunrpc/xprtrdma/verbs.c xprt->reestablish_timeout = RPCRDMA_INIT_REEST_TO; xprt 465 net/sunrpc/xprtrdma/xprt_rdma.h int rpcrdma_ia_open(struct rpcrdma_xprt *xprt); xprt 596 net/sunrpc/xprtrdma/xprt_rdma.h void xprt_rdma_format_addresses(struct rpc_xprt *xprt, struct sockaddr *sap); xprt 597 net/sunrpc/xprtrdma/xprt_rdma.h void xprt_rdma_free_addresses(struct rpc_xprt *xprt); xprt 598 net/sunrpc/xprtrdma/xprt_rdma.h void xprt_rdma_close(struct rpc_xprt *xprt); xprt 599 net/sunrpc/xprtrdma/xprt_rdma.h void xprt_rdma_print_stats(struct rpc_xprt *xprt, struct seq_file *seq); xprt 59 net/sunrpc/xprtsock.c static void xs_close(struct rpc_xprt *xprt); xprt 60 net/sunrpc/xprtsock.c static void xs_tcp_set_socket_timeouts(struct rpc_xprt *xprt, xprt 226 net/sunrpc/xprtsock.c static inline struct sockaddr *xs_addr(struct rpc_xprt *xprt) xprt 228 net/sunrpc/xprtsock.c return (struct sockaddr *) &xprt->addr; xprt 231 net/sunrpc/xprtsock.c static inline struct sockaddr_un *xs_addr_un(struct rpc_xprt *xprt) xprt 233 net/sunrpc/xprtsock.c return (struct sockaddr_un *) &xprt->addr; xprt 236 net/sunrpc/xprtsock.c static inline struct sockaddr_in *xs_addr_in(struct rpc_xprt *xprt) xprt 238 net/sunrpc/xprtsock.c return (struct sockaddr_in *) &xprt->addr; xprt 241 net/sunrpc/xprtsock.c static inline struct sockaddr_in6 *xs_addr_in6(struct rpc_xprt *xprt) xprt 243 net/sunrpc/xprtsock.c return (struct sockaddr_in6 *) &xprt->addr; xprt 246 net/sunrpc/xprtsock.c static void xs_format_common_peer_addresses(struct rpc_xprt *xprt) xprt 248 net/sunrpc/xprtsock.c struct sockaddr *sap = xs_addr(xprt); xprt 256 net/sunrpc/xprtsock.c sun = xs_addr_un(xprt); xprt 258 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR] = xprt 263 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR] = xprt 265 net/sunrpc/xprtsock.c sin = xs_addr_in(xprt); xprt 270 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR] = xprt 272 net/sunrpc/xprtsock.c sin6 = xs_addr_in6(xprt); xprt 279 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_HEX_ADDR] = kstrdup(buf, GFP_KERNEL); xprt 282 net/sunrpc/xprtsock.c static void xs_format_common_peer_ports(struct rpc_xprt *xprt) xprt 284 net/sunrpc/xprtsock.c struct sockaddr *sap = xs_addr(xprt); xprt 288 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PORT] = kstrdup(buf, GFP_KERNEL); xprt 291 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_HEX_PORT] = kstrdup(buf, GFP_KERNEL); xprt 294 net/sunrpc/xprtsock.c static void xs_format_peer_addresses(struct rpc_xprt *xprt, xprt 298 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO] = protocol; xprt 299 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_NETID] = netid; xprt 300 net/sunrpc/xprtsock.c xs_format_common_peer_addresses(xprt); xprt 301 net/sunrpc/xprtsock.c xs_format_common_peer_ports(xprt); xprt 304 net/sunrpc/xprtsock.c static void xs_update_peer_port(struct rpc_xprt *xprt) xprt 306 net/sunrpc/xprtsock.c kfree(xprt->address_strings[RPC_DISPLAY_HEX_PORT]); xprt 307 net/sunrpc/xprtsock.c kfree(xprt->address_strings[RPC_DISPLAY_PORT]); xprt 309 net/sunrpc/xprtsock.c xs_format_common_peer_ports(xprt); xprt 312 net/sunrpc/xprtsock.c static void xs_free_peer_addresses(struct rpc_xprt *xprt) xprt 322 net/sunrpc/xprtsock.c kfree(xprt->address_strings[i]); xprt 555 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = &transport->xprt; xprt 560 net/sunrpc/xprtsock.c req = xprt_lookup_bc_request(xprt, transport->recv.xid); xprt 587 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = &transport->xprt; xprt 592 net/sunrpc/xprtsock.c spin_lock(&xprt->queue_lock); xprt 593 net/sunrpc/xprtsock.c req = xprt_lookup_rqst(xprt, transport->recv.xid); xprt 599 net/sunrpc/xprtsock.c spin_unlock(&xprt->queue_lock); xprt 603 net/sunrpc/xprtsock.c spin_lock(&xprt->queue_lock); xprt 610 net/sunrpc/xprtsock.c spin_unlock(&xprt->queue_lock); xprt 721 net/sunrpc/xprtsock.c trace_xs_stream_read_data(&transport->xprt, ret, read); xprt 746 net/sunrpc/xprtsock.c transport->xprt.stat.connect_count++; xprt 747 net/sunrpc/xprtsock.c transport->xprt.stat.connect_start = jiffies; xprt 878 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = req->rq_xprt; xprt 879 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 889 net/sunrpc/xprtsock.c spin_lock(&xprt->transport_lock); xprt 892 net/sunrpc/xprtsock.c if (xprt_connected(xprt)) { xprt 895 net/sunrpc/xprtsock.c xprt_wait_for_buffer_space(xprt); xprt 899 net/sunrpc/xprtsock.c spin_unlock(&xprt->transport_lock); xprt 956 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = req->rq_xprt; xprt 958 net/sunrpc/xprtsock.c container_of(xprt, struct sock_xprt, xprt); xprt 967 net/sunrpc/xprtsock.c xs_close(xprt); xprt 1005 net/sunrpc/xprtsock.c xs_close(xprt); xprt 1025 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1026 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 1035 net/sunrpc/xprtsock.c if (!xprt_bound(xprt)) xprt 1038 net/sunrpc/xprtsock.c if (!xprt_request_get_cong(xprt, req)) xprt 1042 net/sunrpc/xprtsock.c status = xs_sendpages(transport->sock, xs_addr(xprt), xprt->addrlen, xprt 1104 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = req->rq_xprt; xprt 1105 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 1125 net/sunrpc/xprtsock.c xs_tcp_set_socket_timeouts(xprt, transport->sock); xprt 1216 net/sunrpc/xprtsock.c static void xs_sock_reset_state_flags(struct rpc_xprt *xprt) xprt 1218 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 1232 net/sunrpc/xprtsock.c static void xs_sock_reset_connection_flags(struct rpc_xprt *xprt) xprt 1235 net/sunrpc/xprtsock.c clear_bit(XPRT_CLOSE_WAIT, &xprt->state); xprt 1236 net/sunrpc/xprtsock.c clear_bit(XPRT_CLOSING, &xprt->state); xprt 1237 net/sunrpc/xprtsock.c xs_sock_reset_state_flags(xprt); xprt 1251 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 1254 net/sunrpc/xprtsock.c if (!(xprt = xprt_from_sock(sk))) xprt 1257 net/sunrpc/xprtsock.c transport = container_of(xprt, struct sock_xprt, xprt); xprt 1262 net/sunrpc/xprtsock.c xprt, -transport->xprt_err); xprt 1263 net/sunrpc/xprtsock.c trace_rpc_socket_error(xprt, sk->sk_socket, transport->xprt_err); xprt 1276 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = &transport->xprt; xprt 1282 net/sunrpc/xprtsock.c if (atomic_read(&transport->xprt.swapper)) xprt 1296 net/sunrpc/xprtsock.c xprt_clear_connected(xprt); xprt 1298 net/sunrpc/xprtsock.c xs_sock_reset_connection_flags(xprt); xprt 1303 net/sunrpc/xprtsock.c trace_rpc_socket_close(xprt, sock); xprt 1306 net/sunrpc/xprtsock.c xprt_disconnect_done(xprt); xprt 1319 net/sunrpc/xprtsock.c static void xs_close(struct rpc_xprt *xprt) xprt 1321 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 1323 net/sunrpc/xprtsock.c dprintk("RPC: xs_close xprt %p\n", xprt); xprt 1326 net/sunrpc/xprtsock.c xprt->reestablish_timeout = 0; xprt 1329 net/sunrpc/xprtsock.c static void xs_inject_disconnect(struct rpc_xprt *xprt) xprt 1332 net/sunrpc/xprtsock.c xprt); xprt 1333 net/sunrpc/xprtsock.c xprt_disconnect_done(xprt); xprt 1336 net/sunrpc/xprtsock.c static void xs_xprt_free(struct rpc_xprt *xprt) xprt 1338 net/sunrpc/xprtsock.c xs_free_peer_addresses(xprt); xprt 1339 net/sunrpc/xprtsock.c xprt_free(xprt); xprt 1347 net/sunrpc/xprtsock.c static void xs_destroy(struct rpc_xprt *xprt) xprt 1349 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, xprt 1350 net/sunrpc/xprtsock.c struct sock_xprt, xprt); xprt 1351 net/sunrpc/xprtsock.c dprintk("RPC: xs_destroy xprt %p\n", xprt); xprt 1354 net/sunrpc/xprtsock.c xs_close(xprt); xprt 1357 net/sunrpc/xprtsock.c xs_xprt_free(xprt); xprt 1368 net/sunrpc/xprtsock.c static void xs_udp_data_read_skb(struct rpc_xprt *xprt, xprt 1390 net/sunrpc/xprtsock.c spin_lock(&xprt->queue_lock); xprt 1391 net/sunrpc/xprtsock.c rovr = xprt_lookup_rqst(xprt, *xp); xprt 1396 net/sunrpc/xprtsock.c spin_unlock(&xprt->queue_lock); xprt 1404 net/sunrpc/xprtsock.c spin_lock(&xprt->queue_lock); xprt 1410 net/sunrpc/xprtsock.c spin_lock(&xprt->transport_lock); xprt 1411 net/sunrpc/xprtsock.c xprt_adjust_cwnd(xprt, task, copied); xprt 1412 net/sunrpc/xprtsock.c spin_unlock(&xprt->transport_lock); xprt 1413 net/sunrpc/xprtsock.c spin_lock(&xprt->queue_lock); xprt 1419 net/sunrpc/xprtsock.c spin_unlock(&xprt->queue_lock); xprt 1436 net/sunrpc/xprtsock.c xs_udp_data_read_skb(&transport->xprt, sk, skb); xprt 1462 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 1466 net/sunrpc/xprtsock.c xprt = xprt_from_sock(sk); xprt 1467 net/sunrpc/xprtsock.c if (xprt != NULL) { xprt 1468 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, xprt 1469 net/sunrpc/xprtsock.c struct sock_xprt, xprt); xprt 1474 net/sunrpc/xprtsock.c if (xprt->reestablish_timeout) xprt 1475 net/sunrpc/xprtsock.c xprt->reestablish_timeout = 0; xprt 1486 net/sunrpc/xprtsock.c static void xs_tcp_force_close(struct rpc_xprt *xprt) xprt 1488 net/sunrpc/xprtsock.c xprt_force_disconnect(xprt); xprt 1492 net/sunrpc/xprtsock.c static size_t xs_tcp_bc_maxpayload(struct rpc_xprt *xprt) xprt 1505 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 1509 net/sunrpc/xprtsock.c if (!(xprt = xprt_from_sock(sk))) xprt 1511 net/sunrpc/xprtsock.c dprintk("RPC: xs_tcp_state_change client %p...\n", xprt); xprt 1513 net/sunrpc/xprtsock.c sk->sk_state, xprt_connected(xprt), xprt 1518 net/sunrpc/xprtsock.c transport = container_of(xprt, struct sock_xprt, xprt); xprt 1519 net/sunrpc/xprtsock.c trace_rpc_socket_state_change(xprt, sk->sk_socket); xprt 1522 net/sunrpc/xprtsock.c if (!xprt_test_and_set_connected(xprt)) { xprt 1523 net/sunrpc/xprtsock.c xprt->connect_cookie++; xprt 1525 net/sunrpc/xprtsock.c xprt_clear_connecting(xprt); xprt 1527 net/sunrpc/xprtsock.c xprt->stat.connect_count++; xprt 1528 net/sunrpc/xprtsock.c xprt->stat.connect_time += (long)jiffies - xprt 1529 net/sunrpc/xprtsock.c xprt->stat.connect_start; xprt 1535 net/sunrpc/xprtsock.c xprt->connect_cookie++; xprt 1536 net/sunrpc/xprtsock.c xprt->reestablish_timeout = 0; xprt 1537 net/sunrpc/xprtsock.c set_bit(XPRT_CLOSING, &xprt->state); xprt 1539 net/sunrpc/xprtsock.c clear_bit(XPRT_CONNECTED, &xprt->state); xprt 1540 net/sunrpc/xprtsock.c clear_bit(XPRT_CLOSE_WAIT, &xprt->state); xprt 1545 net/sunrpc/xprtsock.c xprt->connect_cookie++; xprt 1546 net/sunrpc/xprtsock.c clear_bit(XPRT_CONNECTED, &xprt->state); xprt 1554 net/sunrpc/xprtsock.c if (xprt->reestablish_timeout < XS_TCP_INIT_REEST_TO) xprt 1555 net/sunrpc/xprtsock.c xprt->reestablish_timeout = XS_TCP_INIT_REEST_TO; xprt 1558 net/sunrpc/xprtsock.c set_bit(XPRT_CLOSING, &xprt->state); xprt 1560 net/sunrpc/xprtsock.c clear_bit(XPRT_CONNECTED, &xprt->state); xprt 1566 net/sunrpc/xprtsock.c xprt_clear_connecting(xprt); xprt 1567 net/sunrpc/xprtsock.c clear_bit(XPRT_CLOSING, &xprt->state); xprt 1579 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 1585 net/sunrpc/xprtsock.c if (unlikely(!(xprt = xprt_from_sock(sk)))) xprt 1587 net/sunrpc/xprtsock.c transport = container_of(xprt, struct sock_xprt, xprt); xprt 1641 net/sunrpc/xprtsock.c static void xs_udp_do_set_buffer_size(struct rpc_xprt *xprt) xprt 1643 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 1648 net/sunrpc/xprtsock.c sk->sk_rcvbuf = transport->rcvsize * xprt->max_reqs * 2; xprt 1652 net/sunrpc/xprtsock.c sk->sk_sndbuf = transport->sndsize * xprt->max_reqs * 2; xprt 1665 net/sunrpc/xprtsock.c static void xs_udp_set_buffer_size(struct rpc_xprt *xprt, size_t sndsize, size_t rcvsize) xprt 1667 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 1676 net/sunrpc/xprtsock.c xs_udp_do_set_buffer_size(xprt); xprt 1686 net/sunrpc/xprtsock.c static void xs_udp_timer(struct rpc_xprt *xprt, struct rpc_task *task) xprt 1688 net/sunrpc/xprtsock.c spin_lock(&xprt->transport_lock); xprt 1689 net/sunrpc/xprtsock.c xprt_adjust_cwnd(xprt, task, -ETIMEDOUT); xprt 1690 net/sunrpc/xprtsock.c spin_unlock(&xprt->transport_lock); xprt 1745 net/sunrpc/xprtsock.c static void xs_set_port(struct rpc_xprt *xprt, unsigned short port) xprt 1747 net/sunrpc/xprtsock.c dprintk("RPC: setting port for xprt %p to %u\n", xprt, port); xprt 1749 net/sunrpc/xprtsock.c rpc_set_port(xs_addr(xprt), port); xprt 1750 net/sunrpc/xprtsock.c xs_update_peer_port(xprt); xprt 1763 net/sunrpc/xprtsock.c if (port == 0 && transport->xprt.resvport) xprt 1772 net/sunrpc/xprtsock.c if (!transport->xprt.resvport) xprt 1803 net/sunrpc/xprtsock.c memcpy(&myaddr, &transport->srcaddr, transport->xprt.addrlen); xprt 1807 net/sunrpc/xprtsock.c transport->xprt.addrlen); xprt 1837 net/sunrpc/xprtsock.c static void xs_local_set_port(struct rpc_xprt *xprt, unsigned short port) xprt 1896 net/sunrpc/xprtsock.c static struct socket *xs_create_sock(struct rpc_xprt *xprt, xprt 1904 net/sunrpc/xprtsock.c err = __sock_create(xprt->xprt_net, family, type, protocol, &sock, 1); xprt 1931 net/sunrpc/xprtsock.c static int xs_local_finish_connecting(struct rpc_xprt *xprt, xprt 1934 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt 1935 net/sunrpc/xprtsock.c xprt); xprt 1944 net/sunrpc/xprtsock.c sk->sk_user_data = xprt; xprt 1950 net/sunrpc/xprtsock.c xprt_clear_connected(xprt); xprt 1961 net/sunrpc/xprtsock.c return kernel_connect(sock, xs_addr(xprt), xprt->addrlen, 0); xprt 1970 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = &transport->xprt; xprt 1975 net/sunrpc/xprtsock.c status = __sock_create(xprt->xprt_net, AF_LOCAL, xprt 1992 net/sunrpc/xprtsock.c xprt, xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 1994 net/sunrpc/xprtsock.c status = xs_local_finish_connecting(xprt, sock); xprt 1995 net/sunrpc/xprtsock.c trace_rpc_socket_connect(xprt, sock, status); xprt 1999 net/sunrpc/xprtsock.c xprt, xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 2000 net/sunrpc/xprtsock.c xprt->stat.connect_count++; xprt 2001 net/sunrpc/xprtsock.c xprt->stat.connect_time += (long)jiffies - xprt 2002 net/sunrpc/xprtsock.c xprt->stat.connect_start; xprt 2003 net/sunrpc/xprtsock.c xprt_set_connected(xprt); xprt 2008 net/sunrpc/xprtsock.c xprt, xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 2012 net/sunrpc/xprtsock.c xprt, xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 2017 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 2021 net/sunrpc/xprtsock.c xprt_clear_connecting(xprt); xprt 2022 net/sunrpc/xprtsock.c xprt_wake_pending_tasks(xprt, status); xprt 2026 net/sunrpc/xprtsock.c static void xs_local_connect(struct rpc_xprt *xprt, struct rpc_task *task) xprt 2028 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2056 net/sunrpc/xprtsock.c static void xs_set_memalloc(struct rpc_xprt *xprt) xprt 2058 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt 2059 net/sunrpc/xprtsock.c xprt); xprt 2067 net/sunrpc/xprtsock.c if (atomic_read(&xprt->swapper)) xprt 2079 net/sunrpc/xprtsock.c xs_enable_swap(struct rpc_xprt *xprt) xprt 2081 net/sunrpc/xprtsock.c struct sock_xprt *xs = container_of(xprt, struct sock_xprt, xprt); xprt 2083 net/sunrpc/xprtsock.c if (atomic_inc_return(&xprt->swapper) != 1) xprt 2085 net/sunrpc/xprtsock.c if (wait_on_bit_lock(&xprt->state, XPRT_LOCKED, TASK_KILLABLE)) xprt 2089 net/sunrpc/xprtsock.c xprt_release_xprt(xprt, NULL); xprt 2101 net/sunrpc/xprtsock.c xs_disable_swap(struct rpc_xprt *xprt) xprt 2103 net/sunrpc/xprtsock.c struct sock_xprt *xs = container_of(xprt, struct sock_xprt, xprt); xprt 2105 net/sunrpc/xprtsock.c if (!atomic_dec_and_test(&xprt->swapper)) xprt 2107 net/sunrpc/xprtsock.c if (wait_on_bit_lock(&xprt->state, XPRT_LOCKED, TASK_KILLABLE)) xprt 2111 net/sunrpc/xprtsock.c xprt_release_xprt(xprt, NULL); xprt 2114 net/sunrpc/xprtsock.c static void xs_set_memalloc(struct rpc_xprt *xprt) xprt 2119 net/sunrpc/xprtsock.c xs_enable_swap(struct rpc_xprt *xprt) xprt 2125 net/sunrpc/xprtsock.c xs_disable_swap(struct rpc_xprt *xprt) xprt 2130 net/sunrpc/xprtsock.c static void xs_udp_finish_connecting(struct rpc_xprt *xprt, struct socket *sock) xprt 2132 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2141 net/sunrpc/xprtsock.c sk->sk_user_data = xprt; xprt 2146 net/sunrpc/xprtsock.c xprt_set_connected(xprt); xprt 2152 net/sunrpc/xprtsock.c xs_set_memalloc(xprt); xprt 2156 net/sunrpc/xprtsock.c xs_udp_do_set_buffer_size(xprt); xprt 2158 net/sunrpc/xprtsock.c xprt->stat.connect_start = jiffies; xprt 2165 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = &transport->xprt; xprt 2169 net/sunrpc/xprtsock.c sock = xs_create_sock(xprt, transport, xprt 2170 net/sunrpc/xprtsock.c xs_addr(xprt)->sa_family, SOCK_DGRAM, xprt 2176 net/sunrpc/xprtsock.c "%s (port %s)\n", xprt, xprt 2177 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO], xprt 2178 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 2179 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PORT]); xprt 2181 net/sunrpc/xprtsock.c xs_udp_finish_connecting(xprt, sock); xprt 2182 net/sunrpc/xprtsock.c trace_rpc_socket_connect(xprt, sock, 0); xprt 2185 net/sunrpc/xprtsock.c xprt_clear_connecting(xprt); xprt 2186 net/sunrpc/xprtsock.c xprt_unlock_connect(xprt, transport); xprt 2187 net/sunrpc/xprtsock.c xprt_wake_pending_tasks(xprt, status); xprt 2197 net/sunrpc/xprtsock.c static void xs_tcp_shutdown(struct rpc_xprt *xprt) xprt 2199 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2208 net/sunrpc/xprtsock.c trace_rpc_socket_shutdown(xprt, sock); xprt 2216 net/sunrpc/xprtsock.c static void xs_tcp_set_socket_timeouts(struct rpc_xprt *xprt, xprt 2219 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2225 net/sunrpc/xprtsock.c spin_lock(&xprt->transport_lock); xprt 2226 net/sunrpc/xprtsock.c keepidle = DIV_ROUND_UP(xprt->timeout->to_initval, HZ); xprt 2227 net/sunrpc/xprtsock.c keepcnt = xprt->timeout->to_retries + 1; xprt 2228 net/sunrpc/xprtsock.c timeo = jiffies_to_msecs(xprt->timeout->to_initval) * xprt 2229 net/sunrpc/xprtsock.c (xprt->timeout->to_retries + 1); xprt 2231 net/sunrpc/xprtsock.c spin_unlock(&xprt->transport_lock); xprt 2248 net/sunrpc/xprtsock.c static void xs_tcp_set_connect_timeout(struct rpc_xprt *xprt, xprt 2252 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2256 net/sunrpc/xprtsock.c spin_lock(&xprt->transport_lock); xprt 2257 net/sunrpc/xprtsock.c if (reconnect_timeout < xprt->max_reconnect_timeout) xprt 2258 net/sunrpc/xprtsock.c xprt->max_reconnect_timeout = reconnect_timeout; xprt 2259 net/sunrpc/xprtsock.c if (connect_timeout < xprt->connect_timeout) { xprt 2260 net/sunrpc/xprtsock.c memcpy(&to, xprt->timeout, sizeof(to)); xprt 2269 net/sunrpc/xprtsock.c xprt->timeout = &transport->tcp_timeout; xprt 2270 net/sunrpc/xprtsock.c xprt->connect_timeout = connect_timeout; xprt 2273 net/sunrpc/xprtsock.c spin_unlock(&xprt->transport_lock); xprt 2276 net/sunrpc/xprtsock.c static int xs_tcp_finish_connecting(struct rpc_xprt *xprt, struct socket *sock) xprt 2278 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2295 net/sunrpc/xprtsock.c xs_tcp_set_socket_timeouts(xprt, sock); xprt 2301 net/sunrpc/xprtsock.c sk->sk_user_data = xprt; xprt 2312 net/sunrpc/xprtsock.c xprt_clear_connected(xprt); xprt 2321 net/sunrpc/xprtsock.c if (!xprt_bound(xprt)) xprt 2324 net/sunrpc/xprtsock.c xs_set_memalloc(xprt); xprt 2330 net/sunrpc/xprtsock.c ret = kernel_connect(sock, xs_addr(xprt), xprt->addrlen, O_NONBLOCK); xprt 2337 net/sunrpc/xprtsock.c if (xprt->reestablish_timeout < XS_TCP_INIT_REEST_TO) xprt 2338 net/sunrpc/xprtsock.c xprt->reestablish_timeout = XS_TCP_INIT_REEST_TO; xprt 2359 net/sunrpc/xprtsock.c struct rpc_xprt *xprt = &transport->xprt; xprt 2363 net/sunrpc/xprtsock.c sock = xs_create_sock(xprt, transport, xprt 2364 net/sunrpc/xprtsock.c xs_addr(xprt)->sa_family, SOCK_STREAM, xprt 2373 net/sunrpc/xprtsock.c "%s (port %s)\n", xprt, xprt 2374 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO], xprt 2375 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 2376 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PORT]); xprt 2378 net/sunrpc/xprtsock.c status = xs_tcp_finish_connecting(xprt, sock); xprt 2379 net/sunrpc/xprtsock.c trace_rpc_socket_connect(xprt, sock, status); xprt 2381 net/sunrpc/xprtsock.c xprt, -status, xprt_connected(xprt), xprt 2392 net/sunrpc/xprtsock.c xs_tcp_force_close(xprt); xprt 2397 net/sunrpc/xprtsock.c xprt_unlock_connect(xprt, transport); xprt 2415 net/sunrpc/xprtsock.c xprt_wake_pending_tasks(xprt, status); xprt 2416 net/sunrpc/xprtsock.c xs_tcp_force_close(xprt); xprt 2421 net/sunrpc/xprtsock.c xprt_clear_connecting(xprt); xprt 2422 net/sunrpc/xprtsock.c xprt_unlock_connect(xprt, transport); xprt 2423 net/sunrpc/xprtsock.c xprt_wake_pending_tasks(xprt, status); xprt 2440 net/sunrpc/xprtsock.c static void xs_connect(struct rpc_xprt *xprt, struct rpc_task *task) xprt 2442 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2445 net/sunrpc/xprtsock.c WARN_ON_ONCE(!xprt_lock_connect(xprt, task, transport)); xprt 2450 net/sunrpc/xprtsock.c xprt, xprt->reestablish_timeout / HZ); xprt 2455 net/sunrpc/xprtsock.c delay = xprt_reconnect_delay(xprt); xprt 2456 net/sunrpc/xprtsock.c xprt_reconnect_backoff(xprt, XS_TCP_INIT_REEST_TO); xprt 2459 net/sunrpc/xprtsock.c dprintk("RPC: xs_connect scheduled xprt %p\n", xprt); xprt 2469 net/sunrpc/xprtsock.c xs_tcp_force_close(&transport->xprt); xprt 2475 net/sunrpc/xprtsock.c xprt_write_space(&transport->xprt); xprt 2491 net/sunrpc/xprtsock.c xprt_wake_pending_tasks(&transport->xprt, sockerr); xprt 2499 net/sunrpc/xprtsock.c xprt_wake_pending_tasks(&transport->xprt, -EAGAIN); xprt 2519 net/sunrpc/xprtsock.c static void xs_local_print_stats(struct rpc_xprt *xprt, struct seq_file *seq) xprt 2523 net/sunrpc/xprtsock.c if (xprt_connected(xprt)) xprt 2524 net/sunrpc/xprtsock.c idle_time = (long)(jiffies - xprt->last_used) / HZ; xprt 2528 net/sunrpc/xprtsock.c xprt->stat.bind_count, xprt 2529 net/sunrpc/xprtsock.c xprt->stat.connect_count, xprt 2530 net/sunrpc/xprtsock.c xprt->stat.connect_time / HZ, xprt 2532 net/sunrpc/xprtsock.c xprt->stat.sends, xprt 2533 net/sunrpc/xprtsock.c xprt->stat.recvs, xprt 2534 net/sunrpc/xprtsock.c xprt->stat.bad_xids, xprt 2535 net/sunrpc/xprtsock.c xprt->stat.req_u, xprt 2536 net/sunrpc/xprtsock.c xprt->stat.bklog_u, xprt 2537 net/sunrpc/xprtsock.c xprt->stat.max_slots, xprt 2538 net/sunrpc/xprtsock.c xprt->stat.sending_u, xprt 2539 net/sunrpc/xprtsock.c xprt->stat.pending_u); xprt 2548 net/sunrpc/xprtsock.c static void xs_udp_print_stats(struct rpc_xprt *xprt, struct seq_file *seq) xprt 2550 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2555 net/sunrpc/xprtsock.c xprt->stat.bind_count, xprt 2556 net/sunrpc/xprtsock.c xprt->stat.sends, xprt 2557 net/sunrpc/xprtsock.c xprt->stat.recvs, xprt 2558 net/sunrpc/xprtsock.c xprt->stat.bad_xids, xprt 2559 net/sunrpc/xprtsock.c xprt->stat.req_u, xprt 2560 net/sunrpc/xprtsock.c xprt->stat.bklog_u, xprt 2561 net/sunrpc/xprtsock.c xprt->stat.max_slots, xprt 2562 net/sunrpc/xprtsock.c xprt->stat.sending_u, xprt 2563 net/sunrpc/xprtsock.c xprt->stat.pending_u); xprt 2572 net/sunrpc/xprtsock.c static void xs_tcp_print_stats(struct rpc_xprt *xprt, struct seq_file *seq) xprt 2574 net/sunrpc/xprtsock.c struct sock_xprt *transport = container_of(xprt, struct sock_xprt, xprt); xprt 2577 net/sunrpc/xprtsock.c if (xprt_connected(xprt)) xprt 2578 net/sunrpc/xprtsock.c idle_time = (long)(jiffies - xprt->last_used) / HZ; xprt 2583 net/sunrpc/xprtsock.c xprt->stat.bind_count, xprt 2584 net/sunrpc/xprtsock.c xprt->stat.connect_count, xprt 2585 net/sunrpc/xprtsock.c xprt->stat.connect_time / HZ, xprt 2587 net/sunrpc/xprtsock.c xprt->stat.sends, xprt 2588 net/sunrpc/xprtsock.c xprt->stat.recvs, xprt 2589 net/sunrpc/xprtsock.c xprt->stat.bad_xids, xprt 2590 net/sunrpc/xprtsock.c xprt->stat.req_u, xprt 2591 net/sunrpc/xprtsock.c xprt->stat.bklog_u, xprt 2592 net/sunrpc/xprtsock.c xprt->stat.max_slots, xprt 2593 net/sunrpc/xprtsock.c xprt->stat.sending_u, xprt 2594 net/sunrpc/xprtsock.c xprt->stat.pending_u); xprt 2648 net/sunrpc/xprtsock.c container_of(req->rq_xprt, struct sock_xprt, xprt); xprt 2686 net/sunrpc/xprtsock.c struct svc_xprt *xprt; xprt 2692 net/sunrpc/xprtsock.c xprt = req->rq_xprt->bc_xprt; xprt 2698 net/sunrpc/xprtsock.c mutex_lock(&xprt->xpt_mutex); xprt 2699 net/sunrpc/xprtsock.c if (test_bit(XPT_DEAD, &xprt->xpt_flags)) xprt 2703 net/sunrpc/xprtsock.c mutex_unlock(&xprt->xpt_mutex); xprt 2715 net/sunrpc/xprtsock.c static void bc_close(struct rpc_xprt *xprt) xprt 2717 net/sunrpc/xprtsock.c xprt_disconnect_done(xprt); xprt 2725 net/sunrpc/xprtsock.c static void bc_destroy(struct rpc_xprt *xprt) xprt 2727 net/sunrpc/xprtsock.c dprintk("RPC: bc_destroy xprt %p\n", xprt); xprt 2729 net/sunrpc/xprtsock.c xs_xprt_free(xprt); xprt 2857 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 2860 net/sunrpc/xprtsock.c if (args->addrlen > sizeof(xprt->addr)) { xprt 2865 net/sunrpc/xprtsock.c xprt = xprt_alloc(args->net, sizeof(*new), slot_table_size, xprt 2867 net/sunrpc/xprtsock.c if (xprt == NULL) { xprt 2873 net/sunrpc/xprtsock.c new = container_of(xprt, struct sock_xprt, xprt); xprt 2875 net/sunrpc/xprtsock.c memcpy(&xprt->addr, args->dstaddr, args->addrlen); xprt 2876 net/sunrpc/xprtsock.c xprt->addrlen = args->addrlen; xprt 2884 net/sunrpc/xprtsock.c xprt_free(xprt); xprt 2889 net/sunrpc/xprtsock.c return xprt; xprt 2908 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 2911 net/sunrpc/xprtsock.c xprt = xs_setup_xprt(args, xprt_tcp_slot_table_entries, xprt 2913 net/sunrpc/xprtsock.c if (IS_ERR(xprt)) xprt 2914 net/sunrpc/xprtsock.c return xprt; xprt 2915 net/sunrpc/xprtsock.c transport = container_of(xprt, struct sock_xprt, xprt); xprt 2917 net/sunrpc/xprtsock.c xprt->prot = 0; xprt 2918 net/sunrpc/xprtsock.c xprt->max_payload = RPC_MAX_FRAGMENT_SIZE; xprt 2920 net/sunrpc/xprtsock.c xprt->bind_timeout = XS_BIND_TO; xprt 2921 net/sunrpc/xprtsock.c xprt->reestablish_timeout = XS_TCP_INIT_REEST_TO; xprt 2922 net/sunrpc/xprtsock.c xprt->idle_timeout = XS_IDLE_DISC_TO; xprt 2924 net/sunrpc/xprtsock.c xprt->ops = &xs_local_ops; xprt 2925 net/sunrpc/xprtsock.c xprt->timeout = &xs_local_default_timeout; xprt 2939 net/sunrpc/xprtsock.c xprt_set_bound(xprt); xprt 2940 net/sunrpc/xprtsock.c xs_format_peer_addresses(xprt, "local", RPCBIND_NETID_LOCAL); xprt 2951 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR]); xprt 2954 net/sunrpc/xprtsock.c return xprt; xprt 2957 net/sunrpc/xprtsock.c xs_xprt_free(xprt); xprt 2976 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 2980 net/sunrpc/xprtsock.c xprt = xs_setup_xprt(args, xprt_udp_slot_table_entries, xprt 2982 net/sunrpc/xprtsock.c if (IS_ERR(xprt)) xprt 2983 net/sunrpc/xprtsock.c return xprt; xprt 2984 net/sunrpc/xprtsock.c transport = container_of(xprt, struct sock_xprt, xprt); xprt 2986 net/sunrpc/xprtsock.c xprt->prot = IPPROTO_UDP; xprt 2988 net/sunrpc/xprtsock.c xprt->max_payload = (1U << 16) - (MAX_HEADER << 3); xprt 2990 net/sunrpc/xprtsock.c xprt->bind_timeout = XS_BIND_TO; xprt 2991 net/sunrpc/xprtsock.c xprt->reestablish_timeout = XS_UDP_REEST_TO; xprt 2992 net/sunrpc/xprtsock.c xprt->idle_timeout = XS_IDLE_DISC_TO; xprt 2994 net/sunrpc/xprtsock.c xprt->ops = &xs_udp_ops; xprt 2996 net/sunrpc/xprtsock.c xprt->timeout = &xs_udp_default_timeout; xprt 3005 net/sunrpc/xprtsock.c xprt_set_bound(xprt); xprt 3007 net/sunrpc/xprtsock.c xs_format_peer_addresses(xprt, "udp", RPCBIND_NETID_UDP); xprt 3011 net/sunrpc/xprtsock.c xprt_set_bound(xprt); xprt 3013 net/sunrpc/xprtsock.c xs_format_peer_addresses(xprt, "udp", RPCBIND_NETID_UDP6); xprt 3020 net/sunrpc/xprtsock.c if (xprt_bound(xprt)) xprt 3022 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 3023 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PORT], xprt 3024 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO]); xprt 3027 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 3028 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO]); xprt 3031 net/sunrpc/xprtsock.c return xprt; xprt 3034 net/sunrpc/xprtsock.c xs_xprt_free(xprt); xprt 3052 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 3060 net/sunrpc/xprtsock.c xprt = xs_setup_xprt(args, xprt_tcp_slot_table_entries, xprt 3062 net/sunrpc/xprtsock.c if (IS_ERR(xprt)) xprt 3063 net/sunrpc/xprtsock.c return xprt; xprt 3064 net/sunrpc/xprtsock.c transport = container_of(xprt, struct sock_xprt, xprt); xprt 3066 net/sunrpc/xprtsock.c xprt->prot = IPPROTO_TCP; xprt 3067 net/sunrpc/xprtsock.c xprt->max_payload = RPC_MAX_FRAGMENT_SIZE; xprt 3069 net/sunrpc/xprtsock.c xprt->bind_timeout = XS_BIND_TO; xprt 3070 net/sunrpc/xprtsock.c xprt->reestablish_timeout = XS_TCP_INIT_REEST_TO; xprt 3071 net/sunrpc/xprtsock.c xprt->idle_timeout = XS_IDLE_DISC_TO; xprt 3073 net/sunrpc/xprtsock.c xprt->ops = &xs_tcp_ops; xprt 3074 net/sunrpc/xprtsock.c xprt->timeout = &xs_tcp_default_timeout; xprt 3076 net/sunrpc/xprtsock.c xprt->max_reconnect_timeout = xprt->timeout->to_maxval; xprt 3077 net/sunrpc/xprtsock.c xprt->connect_timeout = xprt->timeout->to_initval * xprt 3078 net/sunrpc/xprtsock.c (xprt->timeout->to_retries + 1); xprt 3087 net/sunrpc/xprtsock.c xprt_set_bound(xprt); xprt 3089 net/sunrpc/xprtsock.c xs_format_peer_addresses(xprt, "tcp", RPCBIND_NETID_TCP); xprt 3093 net/sunrpc/xprtsock.c xprt_set_bound(xprt); xprt 3095 net/sunrpc/xprtsock.c xs_format_peer_addresses(xprt, "tcp", RPCBIND_NETID_TCP6); xprt 3102 net/sunrpc/xprtsock.c if (xprt_bound(xprt)) xprt 3104 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 3105 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PORT], xprt 3106 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO]); xprt 3109 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 3110 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO]); xprt 3113 net/sunrpc/xprtsock.c return xprt; xprt 3116 net/sunrpc/xprtsock.c xs_xprt_free(xprt); xprt 3128 net/sunrpc/xprtsock.c struct rpc_xprt *xprt; xprt 3133 net/sunrpc/xprtsock.c xprt = xs_setup_xprt(args, xprt_tcp_slot_table_entries, xprt 3135 net/sunrpc/xprtsock.c if (IS_ERR(xprt)) xprt 3136 net/sunrpc/xprtsock.c return xprt; xprt 3137 net/sunrpc/xprtsock.c transport = container_of(xprt, struct sock_xprt, xprt); xprt 3139 net/sunrpc/xprtsock.c xprt->prot = IPPROTO_TCP; xprt 3140 net/sunrpc/xprtsock.c xprt->max_payload = RPC_MAX_FRAGMENT_SIZE; xprt 3141 net/sunrpc/xprtsock.c xprt->timeout = &xs_tcp_default_timeout; xprt 3144 net/sunrpc/xprtsock.c xprt_set_bound(xprt); xprt 3145 net/sunrpc/xprtsock.c xprt->bind_timeout = 0; xprt 3146 net/sunrpc/xprtsock.c xprt->reestablish_timeout = 0; xprt 3147 net/sunrpc/xprtsock.c xprt->idle_timeout = 0; xprt 3149 net/sunrpc/xprtsock.c xprt->ops = &bc_tcp_ops; xprt 3153 net/sunrpc/xprtsock.c xs_format_peer_addresses(xprt, "tcp", xprt 3157 net/sunrpc/xprtsock.c xs_format_peer_addresses(xprt, "tcp", xprt 3166 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_ADDR], xprt 3167 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PORT], xprt 3168 net/sunrpc/xprtsock.c xprt->address_strings[RPC_DISPLAY_PROTO]); xprt 3176 net/sunrpc/xprtsock.c xprt_get(xprt); xprt 3177 net/sunrpc/xprtsock.c args->bc_xprt->xpt_bc_xprt = xprt; xprt 3178 net/sunrpc/xprtsock.c xprt->bc_xprt = args->bc_xprt; xprt 3187 net/sunrpc/xprtsock.c xprt_set_connected(xprt); xprt 3190 net/sunrpc/xprtsock.c return xprt; xprt 3194 net/sunrpc/xprtsock.c xprt_put(xprt); xprt 3197 net/sunrpc/xprtsock.c xs_xprt_free(xprt);