rpc_xprt_switch
struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *,
struct rpc_xprt_switch *,
struct rpc_xprt_switch *xprt_switch;
struct rpc_xprt_switch *xpt_bc_xps; /* NFSv4.1 backchannel */
struct rpc_xprt_switch *bc_xps;
void xprt_set_offline_locked(struct rpc_xprt *xprt, struct rpc_xprt_switch *xps);
void xprt_set_online_locked(struct rpc_xprt *xprt, struct rpc_xprt_switch *xps);
void xprt_delete_locked(struct rpc_xprt *xprt, struct rpc_xprt_switch *xps);
struct rpc_xprt_switch __rcu *xpi_xpswitch;
extern struct rpc_xprt_switch *xprt_switch_alloc(struct rpc_xprt *xprt,
extern struct rpc_xprt_switch *xprt_switch_get(struct rpc_xprt_switch *xps);
extern void xprt_switch_put(struct rpc_xprt_switch *xps);
extern void rpc_xprt_switch_set_roundrobin(struct rpc_xprt_switch *xps);
extern void rpc_xprt_switch_add_xprt(struct rpc_xprt_switch *xps,
extern void rpc_xprt_switch_remove_xprt(struct rpc_xprt_switch *xps,
extern struct rpc_xprt *rpc_xprt_switch_get_main_xprt(struct rpc_xprt_switch *xps);
struct rpc_xprt_switch *xps);
struct rpc_xprt_switch *xps);
struct rpc_xprt_switch *xps);
extern struct rpc_xprt_switch *xprt_iter_xchg_switch(
struct rpc_xprt_switch *newswitch);
extern bool rpc_xprt_switch_has_addr(struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *xps = rcu_access_pointer(clnt->cl_xpi.xpi_xpswitch);
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps, struct rpc_xprt *xprt,
struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *,
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps, *oldxps;
static struct rpc_xprt_switch *rpc_clnt_xprt_switch_get(struct rpc_clnt *clnt)
struct rpc_xprt_switch *xps;
void func(struct rpc_xprt_iter *xpi, struct rpc_xprt_switch *xps))
struct rpc_xprt_switch *xps;
struct rpc_xprt_switch *xps = rcu_access_pointer(clnt->cl_xpi.xpi_xpswitch);
struct rpc_xprt_switch *xprt_switch =
struct rpc_xprt_switch *xprt_switch =
struct rpc_xprt_switch *xps = rpc_sysfs_xprt_kobj_get_xprt_switch(kobj);
struct rpc_xprt_switch *xps = rpc_sysfs_xprt_kobj_get_xprt_switch(kobj);
struct rpc_xprt_switch *xprt_switch,
struct rpc_xprt_switch *xprt_switch,
void rpc_sysfs_xprt_switch_setup(struct rpc_xprt_switch *xprt_switch,
struct rpc_sysfs_xprt_switch *rpc_xprt_switch;
rpc_xprt_switch =
if (rpc_xprt_switch) {
xprt_switch->xps_sysfs = rpc_xprt_switch;
rpc_xprt_switch->xprt_switch = xprt_switch;
rpc_xprt_switch->xprt = xprt;
kobject_uevent(&rpc_xprt_switch->kobject, KOBJ_ADD);
void rpc_sysfs_xprt_setup(struct rpc_xprt_switch *xprt_switch,
void rpc_sysfs_xprt_switch_destroy(struct rpc_xprt_switch *xprt_switch)
struct rpc_sysfs_xprt_switch *rpc_xprt_switch = xprt_switch->xps_sysfs;
static inline struct rpc_xprt_switch *
if (rpc_xprt_switch) {
kobject_uevent(&rpc_xprt_switch->kobject, KOBJ_REMOVE);
kobject_del(&rpc_xprt_switch->kobject);
kobject_put(&rpc_xprt_switch->kobject);
static inline struct rpc_xprt_switch *
struct rpc_xprt_switch *xprt_switch;
struct rpc_xprt_switch *xprt_switch;
struct rpc_xprt_switch *xprt_switch,
void rpc_sysfs_xprt_switch_setup(struct rpc_xprt_switch *xprt_switch,
void rpc_sysfs_xprt_switch_destroy(struct rpc_xprt_switch *xprt);
void rpc_sysfs_xprt_setup(struct rpc_xprt_switch *xprt_switch,
void xprt_set_offline_locked(struct rpc_xprt *xprt, struct rpc_xprt_switch *xps)
void xprt_set_online_locked(struct rpc_xprt *xprt, struct rpc_xprt_switch *xps)
void xprt_delete_locked(struct rpc_xprt *xprt, struct rpc_xprt_switch *xps)
static int xprt_switch_alloc_id(struct rpc_xprt_switch *xps, gfp_t gfp_flags)
static void xprt_switch_free_id(struct rpc_xprt_switch *xps)
struct rpc_xprt_switch *xprt_switch_alloc(struct rpc_xprt *xprt,
struct rpc_xprt_switch *xps;
static void xprt_switch_free_entries(struct rpc_xprt_switch *xps)
struct rpc_xprt_switch *xps = container_of(kref,
struct rpc_xprt_switch, xps_kref);
struct rpc_xprt_switch *xprt_switch_get(struct rpc_xprt_switch *xps)
void xprt_switch_put(struct rpc_xprt_switch *xps)
void rpc_xprt_switch_set_roundrobin(struct rpc_xprt_switch *xps)
struct rpc_xprt_switch *xps = rcu_dereference(xpi->xpi_xpswitch);
static void xprt_switch_add_xprt_locked(struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *xps = rcu_dereference(xpi->xpi_xpswitch);
bool __rpc_xprt_switch_has_addr(struct rpc_xprt_switch *xps,
bool rpc_xprt_switch_has_addr(struct rpc_xprt_switch *xps,
struct rpc_xprt *xprt_switch_set_next_cursor(struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *xps = rcu_dereference(xpi->xpi_xpswitch);
struct rpc_xprt *xprt_switch_find_next_entry_roundrobin(struct rpc_xprt_switch *xps,
struct rpc_xprt *xprt_switch_find_next_entry_all(struct rpc_xprt_switch *xps,
struct rpc_xprt *xprt_switch_find_next_entry_offline(struct rpc_xprt_switch *xps,
void rpc_xprt_switch_add_xprt(struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *xps,
struct rpc_xprt_switch *xps)
struct rpc_xprt_switch *xps)
struct rpc_xprt_switch *xps)
struct rpc_xprt_switch *xprt_iter_xchg_switch(struct rpc_xprt_iter *xpi,
struct rpc_xprt_switch *newswitch)
struct rpc_xprt_switch __rcu *oldswitch;
static void xprt_switch_remove_xprt_locked(struct rpc_xprt_switch *xps,
void rpc_xprt_switch_remove_xprt(struct rpc_xprt_switch *xps,
struct rpc_xprt *rpc_xprt_switch_get_main_xprt(struct rpc_xprt_switch *xps)