Motr  M0
coroutine.c File Reference
#include "lib/trace.h"
#include "lib/coroutine.h"
#include "lib/memory.h"
#include "fop/fom.h"
Include dependency graph for coroutine.c:

Go to the source code of this file.

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_LIB
 

Enumerations

enum  m0_co_op_state { COR_INVALID, COR_INIT, COR_ACTIVE, COR_DONE }
 

Functions

static int locals_alloc_init (struct m0_co_locals_allocator *alloc)
 
static void locals_alloc_fini (struct m0_co_locals_allocator *alloc)
 
static void * locals_alloc (struct m0_co_locals_allocator *alloc, uint64_t frame, uint64_t size)
 
static void locals_free (struct m0_co_locals_allocator *alloc, uint64_t frame)
 
M0_INTERNAL void m0_co_context_locals_alloc (struct m0_co_context *context, uint64_t size)
 
M0_INTERNAL void m0_co_context_locals_free (struct m0_co_context *context)
 
M0_INTERNAL void * m0_co_context_locals (struct m0_co_context *context)
 
M0_INTERNAL int m0_co_context_init (struct m0_co_context *context)
 
M0_INTERNAL void m0_co_context_fini (struct m0_co_context *context)
 
M0_INTERNAL void m0_co_op_init (struct m0_co_op *op)
 
M0_INTERNAL void m0_co_op_fini (struct m0_co_op *op)
 
M0_INTERNAL void m0_co_op_reset (struct m0_co_op *op)
 
M0_INTERNAL void m0_co_op_active (struct m0_co_op *op)
 
M0_INTERNAL void m0_co_op_done (struct m0_co_op *op)
 
M0_INTERNAL int m0_co_op_tick_ret (struct m0_co_op *op, struct m0_fom *fom, int next_state)
 

Variables

enum m0_co_op_state M0_XCA_DOMAIN
 
static struct m0_sm_state_descr co_states []
 
static struct m0_sm_trans_descr co_trans []
 
M0_INTERNAL struct m0_sm_conf co_states_conf