Motr  M0
msg_queue.c File Reference
#include "lib/trace.h"
#include "ha/msg_queue.h"
#include "lib/memory.h"
Include dependency graph for msg_queue.c:

Go to the source code of this file.

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_HA
 

Functions

 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_TL_DEFINE (ha_mq, static, struct m0_ha_msg_qitem)
 
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_fini (struct m0_ha_msg_queue *mq)
 
M0_INTERNAL struct m0_ha_msg_qitemm0_ha_msg_queue_alloc (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 void m0_ha_msg_queue_enqueue (struct m0_ha_msg_queue *mq, struct m0_ha_msg_qitem *qitem)
 
M0_INTERNAL struct m0_ha_msg_qitemm0_ha_msg_queue_dequeue (struct m0_ha_msg_queue *mq)
 
M0_INTERNAL void m0_ha_msg_queue_push_front (struct m0_ha_msg_queue *mq, struct m0_ha_msg_qitem *qitem)
 
M0_INTERNAL bool m0_ha_msg_queue_is_empty (struct m0_ha_msg_queue *mq)
 
M0_INTERNAL struct m0_ha_msg_qitemm0_ha_msg_queue_find (struct m0_ha_msg_queue *mq, uint64_t tag)
 
M0_INTERNAL struct m0_ha_msg_qitemm0_ha_msg_queue_next (struct m0_ha_msg_queue *mq, const struct m0_ha_msg_qitem *cur)
 
M0_INTERNAL struct m0_ha_msg_qitemm0_ha_msg_queue_prev (struct m0_ha_msg_queue *mq, const struct m0_ha_msg_qitem *cur)