Motr  M0
diter.c File Reference
#include "lib/trace.h"
#include "conf/diter.h"
#include "conf/obj_ops.h"
#include "lib/memory.h"
#include "lib/errno.h"
Include dependency graph for diter.c:

Go to the source code of this file.

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_CONF
 

Enumerations

enum  diter_phase { DPH_LVL_OPEN, DPH_LVL_READ, DPH_LVL_WAIT }
 

Functions

static bool diter_lvl_invariant (const struct m0_conf_diter_lvl *l)
 
static bool diter_invariant (const struct m0_conf_diter *it)
 
M0_INTERNAL void m0_conf_diter_lvl_init (struct m0_conf_diter_lvl *l, struct m0_conf_diter *it, struct m0_confc *confc, uint32_t lvl, const struct m0_fid *path)
 
static void diter_confc_ctx_fini (struct m0_conf_diter *it, struct m0_confc_ctx *ctx)
 
M0_INTERNAL void m0_conf_diter_lvl_fini (struct m0_conf_diter_lvl *l)
 
static struct m0_conf_objditer_lvl_dir_obj (struct m0_conf_diter_lvl *l)
 
static struct m0_conf_objditer_lvl_entry_obj (struct m0_conf_diter_lvl *l)
 
static struct m0_confc_ctxditer_lvl_ctx (struct m0_conf_diter_lvl *l)
 
static struct m0_conf_diter_lvlditer_lvl (struct m0_conf_diter *it)
 
static void diter_lvl_mode_set (struct m0_conf_diter_lvl *l, enum m0_diter_lvl_mode mode)
 
static bool diter_chan_cb (struct m0_clink *link)
 
M0_INTERNAL int m0_conf__diter_init (struct m0_conf_diter *it, struct m0_confc *confc, struct m0_conf_obj *origin, uint32_t nr_lvls, const struct m0_fid *path)
 
M0_INTERNAL void m0_conf_diter_fini (struct m0_conf_diter *it)
 
M0_INTERNAL void m0_conf_diter_locked_set (struct m0_conf_diter *it, bool locked)
 
M0_INTERNAL void m0_conf_diter_wait_arm (struct m0_conf_diter *it, struct m0_clink *clink)
 
static void diter_wait_arm (struct m0_conf_diter *it, struct m0_confc_ctx *ctx)
 
static void diter_wait_cancel (struct m0_clink *clink, bool locked)
 
static void diter_lvl_result_set (struct m0_conf_diter_lvl *l, struct m0_conf_obj *result)
 
static struct m0_conf_objditer_lvl_origin (struct m0_conf_diter *it)
 
static int diter_wait (struct m0_conf_diter *it)
 
static void diter_lvl_check (struct m0_conf_diter *it)
 
M0_INTERNAL int diter_lvl_open (struct m0_conf_diter *it)
 
static int diter_lvl_read (struct m0_conf_diter *it)
 
M0_INTERNAL int m0_conf_diter_next (struct m0_conf_diter *it, bool(*filter)(const struct m0_conf_obj *obj))
 
M0_INTERNAL int m0_conf_diter_next_sync (struct m0_conf_diter *it, bool(*filter)(const struct m0_conf_obj *obj))
 
M0_INTERNAL struct m0_conf_objm0_conf_diter_result (const struct m0_conf_diter *it)
 

Macro Definition Documentation

◆ M0_TRACE_SUBSYSTEM

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_CONF

Definition at line 23 of file diter.c.