Lines Matching refs:xprt
32 struct rpc_xprt *xprt) in xprt_switch_add_xprt_locked() argument
34 if (unlikely(xprt_get(xprt) == NULL)) in xprt_switch_add_xprt_locked()
36 list_add_tail_rcu(&xprt->xprt_switch, &xps->xps_xprt_list); in xprt_switch_add_xprt_locked()
39 xps->xps_net = xprt->xprt_net; in xprt_switch_add_xprt_locked()
52 struct rpc_xprt *xprt) in rpc_xprt_switch_add_xprt() argument
54 if (xprt == NULL) in rpc_xprt_switch_add_xprt()
57 if (xps->xps_net == xprt->xprt_net || xps->xps_net == NULL) in rpc_xprt_switch_add_xprt()
58 xprt_switch_add_xprt_locked(xps, xprt); in rpc_xprt_switch_add_xprt()
60 rpc_sysfs_xprt_setup(xps, xprt, GFP_KERNEL); in rpc_xprt_switch_add_xprt()
64 struct rpc_xprt *xprt) in xprt_switch_remove_xprt_locked() argument
66 if (unlikely(xprt == NULL)) in xprt_switch_remove_xprt_locked()
68 if (!test_bit(XPRT_OFFLINE, &xprt->state)) in xprt_switch_remove_xprt_locked()
74 list_del_rcu(&xprt->xprt_switch); in xprt_switch_remove_xprt_locked()
85 struct rpc_xprt *xprt) in rpc_xprt_switch_remove_xprt() argument
88 xprt_switch_remove_xprt_locked(xps, xprt); in rpc_xprt_switch_remove_xprt()
90 xprt_put(xprt); in rpc_xprt_switch_remove_xprt()
125 struct rpc_xprt_switch *xprt_switch_alloc(struct rpc_xprt *xprt, in xprt_switch_alloc() argument
140 rpc_sysfs_xprt_switch_setup(xps, xprt, gfp_flags); in xprt_switch_alloc()
141 xprt_switch_add_xprt_locked(xps, xprt); in xprt_switch_alloc()
143 rpc_sysfs_xprt_setup(xps, xprt, gfp_flags); in xprt_switch_alloc()
153 struct rpc_xprt *xprt; in xprt_switch_free_entries() local
155 xprt = list_first_entry(&xps->xps_xprt_list, in xprt_switch_free_entries()
157 xprt_switch_remove_xprt_locked(xps, xprt); in xprt_switch_free_entries()
159 xprt_put(xprt); in xprt_switch_free_entries()
233 bool xprt_is_active(const struct rpc_xprt *xprt) in xprt_is_active() argument
235 return (kref_read(&xprt->kref) != 0 && in xprt_is_active()
236 !test_bit(XPRT_OFFLINE, &xprt->state)); in xprt_is_active()
369 struct rpc_xprt *xprt; in xprt_switch_find_next_entry_roundrobin() local
375 xprt = __xprt_switch_find_next_entry_roundrobin(head, cur); in xprt_switch_find_next_entry_roundrobin()
376 if (!xprt) in xprt_switch_find_next_entry_roundrobin()
378 xprt_queuelen = atomic_long_read(&xprt->queuelen); in xprt_switch_find_next_entry_roundrobin()
384 cur = xprt; in xprt_switch_find_next_entry_roundrobin()
386 return xprt; in xprt_switch_find_next_entry_roundrobin()
529 struct rpc_xprt *xprt; in xprt_iter_get_xprt() local
532 xprt = xprt_iter_get_helper(xpi, xprt_iter_ops(xpi)->xpi_xprt); in xprt_iter_get_xprt()
534 return xprt; in xprt_iter_get_xprt()
546 struct rpc_xprt *xprt; in xprt_iter_get_next() local
549 xprt = xprt_iter_get_helper(xpi, xprt_iter_ops(xpi)->xpi_next); in xprt_iter_get_next()
551 return xprt; in xprt_iter_get_next()