58 ops->riso_conn_terminating !=
NULL);
65 item_source_tlink_init(ris);
74 item_source_tlink_fini(ris);
80 return item_source_tlink_is_in(ris);
121 item_source_tlist_del(ris);
void m0_rpc_item_source_fini(struct m0_rpc_item_source *ris)
void m0_rpc_item_source_register(struct m0_rpc_conn *conn, struct m0_rpc_item_source *ris)
const struct m0_rpc_item_source_ops * ris_ops
M0_TL_DEFINE(item_source, M0_INTERNAL, struct m0_rpc_item_source)
struct m0_rpc_conn * ris_conn
void m0_rpc_item_source_deregister(struct m0_rpc_item_source *ris)
void m0_rpc_item_source_init(struct m0_rpc_item_source *ris, const char *name, const struct m0_rpc_item_source_ops *ops)
struct m0_tl c_item_sources
struct m0_rpc_item *(* riso_get_item)(struct m0_rpc_item_source *ris, m0_bcount_t max_payload_size)
M0_INTERNAL bool m0_rpc_machine_is_locked(const struct m0_rpc_machine *machine)
struct m0_rpc_machine * c_rpc_machine
M0_INTERNAL void m0_rpc_machine_unlock(struct m0_rpc_machine *machine)
M0_TL_DESCR_DEFINE(item_source, "item-source-list", M0_INTERNAL, struct m0_rpc_item_source, ris_tlink, ris_magic, M0_RPC_ITEM_SOURCE_MAGIC, M0_RPC_ITEM_SOURCE_HEAD_MAGIC)
struct m0_rpc_machine machine
static bool item_source_invariant(const struct m0_rpc_item_source *ris)
M0_INTERNAL bool m0_rpc_machine_is_not_locked(const struct m0_rpc_machine *machine)
M0_INTERNAL void m0_rpc_machine_lock(struct m0_rpc_machine *machine)
void(* riso_conn_terminating)(struct m0_rpc_item_source *ris)
bool m0_rpc_item_source_is_registered(const struct m0_rpc_item_source *ris)
void m0_rpc_item_source_register_locked(struct m0_rpc_conn *conn, struct m0_rpc_item_source *ris)
bool(* riso_has_item)(const struct m0_rpc_item_source *ris)