struct m0_list_link xwi_link
M0_INTERNAL void m0_list_link_fini(struct m0_list_link *link)
struct m0_cond xtm_work_list_cv
M0_INTERNAL void m0_mutex_unlock(struct m0_mutex *mutex)
enum m0_net_bulk_mem_tm_state xtm_state
static struct m0_net_buffer * mem_wi_to_buffer(struct m0_net_bulk_mem_work_item *wi)
M0_INTERNAL bool m0_mutex_is_not_locked(const struct m0_mutex *mutex)
static void mem_wf_cancel_cb(struct m0_net_transfer_mc *tm, struct m0_net_bulk_mem_work_item *wi)
static void mem_wi_add(struct m0_net_bulk_mem_work_item *wi, struct m0_net_bulk_mem_tm_pvt *tp)
static void mem_wi_post_buffer_event(struct m0_net_bulk_mem_work_item *wi)
enum m0_net_bulk_mem_work_opcode xwi_op
enum m0_net_bulk_mem_tm_state xwi_next_state
M0_INTERNAL void m0_list_del(struct m0_list_link *old)
struct m0_net_domain * ntm_dom
static void mem_wf_state_change(struct m0_net_transfer_mc *tm, struct m0_net_bulk_mem_work_item *wi)
struct m0_list xtm_work_list
struct m0_net_end_point * xwi_nbe_ep
M0_INTERNAL void m0_mutex_lock(struct m0_mutex *mutex)
M0_INTERNAL void m0_ref_put(struct m0_ref *ref)
enum m0_net_tm_state nte_next_state
M0_INTERNAL bool m0_mutex_is_locked(const struct m0_mutex *mutex)
m0_time_t m0_time_now(void)
M0_INTERNAL void m0_cond_signal(struct m0_cond *cond)
static void mem_post_error(struct m0_net_transfer_mc *tm, int32_t status)
M0_INTERNAL void m0_net_tm_event_post(const struct m0_net_tm_event *ev)
static void mem_xo_tm_worker(struct m0_net_transfer_mc *tm)
M0_INTERNAL bool m0_list_is_empty(const struct m0_list *head)
m0_net_bulk_mem_work_fn_t bmo_work_fn[M0_NET_XOP_NR]
struct m0_net_end_point * nte_ep
M0_INTERNAL void m0_cond_wait(struct m0_cond *cond)
#define M0_ALLOC_PTR(ptr)
M0_INTERNAL bool m0_net__tm_invariant(const struct m0_net_transfer_mc *tm)
m0_time_t m0_time_from_now(uint64_t secs, long ns)
uint32_t xtm_callback_counter
const struct m0_net_bulk_mem_ops * xd_ops
M0_INTERNAL bool m0_cond_timedwait(struct m0_cond *cond, const m0_time_t abs_timeout)
M0_INTERNAL void m0_cond_broadcast(struct m0_cond *cond)
enum m0_net_tm_ev_type nte_type
static struct m0_list_link * m0_list_first(const struct m0_list *head)
static struct m0_net_bulk_mem_domain_pvt * mem_dom_to_pvt(const struct m0_net_domain *dom)
static struct m0_net_bulk_mem_tm_pvt * mem_tm_to_pvt(const struct m0_net_transfer_mc *tm)
#define m0_list_entry(link, type, member)
void(* m0_net_bulk_mem_work_fn_t)(struct m0_net_transfer_mc *tm, struct m0_net_bulk_mem_work_item *wi)
static void mem_wf_error_cb(struct m0_net_transfer_mc *tm, struct m0_net_bulk_mem_work_item *wi)