30 #define M0_TRACE_SUBSYSTEM M0_TRACE_SUBSYS_HA 71 ha_mq_tlink_init_at_tail(qitem, &mq->
mq_queue);
79 qitem = ha_mq_tlist_pop(&mq->
mq_queue);
81 ha_mq_tlink_fini(qitem);
88 ha_mq_tlink_init_at(qitem, &mq->
mq_queue);
93 return ha_mq_tlist_is_empty(&mq->
mq_queue);
120 #undef M0_TRACE_SUBSYSTEM
static struct buffer * cur(struct m0_addb2_mach *mach, m0_bcount_t space)
static uint64_t tag(uint8_t code, uint64_t id)
M0_INTERNAL struct m0_ha_msg_qitem * m0_ha_msg_queue_dequeue(struct m0_ha_msg_queue *mq)
M0_INTERNAL void m0_ha_msg_queue_enqueue(struct m0_ha_msg_queue *mq, struct m0_ha_msg_qitem *qitem)
M0_TL_DESCR_DEFINE(ha_mq, "m0_ha_msg_queue::mq_queue", static, struct m0_ha_msg_qitem, hmq_link, hmq_magic, M0_HA_MSG_QITEM_MAGIC, M0_HA_MSG_QUEUE_HEAD_MAGIC)
M0_INTERNAL struct m0_ha_msg_qitem * m0_ha_msg_queue_find(struct m0_ha_msg_queue *mq, uint64_t tag)
M0_INTERNAL void m0_ha_msg_queue_fini(struct m0_ha_msg_queue *mq)
M0_INTERNAL void m0_ha_msg_queue_free(struct m0_ha_msg_queue *mq, struct m0_ha_msg_qitem *qitem)
M0_INTERNAL struct m0_ha_msg_qitem * m0_ha_msg_queue_alloc(struct m0_ha_msg_queue *mq)
M0_INTERNAL uint64_t m0_ha_msg_tag(const struct m0_ha_msg *msg)
M0_INTERNAL bool m0_ha_msg_queue_is_empty(struct m0_ha_msg_queue *mq)
M0_TL_DEFINE(ha_mq, static, struct m0_ha_msg_qitem)
M0_INTERNAL struct m0_ha_msg_qitem * m0_ha_msg_queue_next(struct m0_ha_msg_queue *mq, const struct m0_ha_msg_qitem *cur)
#define M0_ALLOC_PTR(ptr)
M0_INTERNAL struct m0_ha_msg_qitem * m0_ha_msg_queue_prev(struct m0_ha_msg_queue *mq, const struct m0_ha_msg_qitem *cur)
#define m0_tl_find(name, var, head,...)
M0_INTERNAL void m0_ha_msg_queue_init(struct m0_ha_msg_queue *mq, struct m0_ha_msg_queue_cfg *cfg)
M0_INTERNAL void m0_ha_msg_queue_push_front(struct m0_ha_msg_queue *mq, struct m0_ha_msg_qitem *qitem)