Motr  M0
pump.c File Reference
#include "lib/trace.h"
#include "lib/bob.h"
#include "lib/misc.h"
#include "lib/errno.h"
#include "lib/finject.h"
#include "sm/sm.h"
#include "rpc/rpc_opcodes.h"
#include "cm/pump.h"
#include "cm/cm.h"
#include "cm/cp.h"
#include "cm/ag.h"
#include "cm/proxy.h"
#include "reqh/reqh.h"
#include "pool/pool.h"
#include "motr/setup.h"
Include dependency graph for pump.c:

Go to the source code of this file.

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_CM
 

Enumerations

enum  cm_cp_pump_fom_phase {
  CPP_ALLOC = M0_FOM_PHASE_INIT, CPP_FINI = M0_FOM_PHASE_FINISH, CPP_DATA_NEXT, CPP_COMPLETE,
  CPP_STOP, CPP_FAIL, CPP_NR
}
 
enum  { CM_PUMP_MAGIX = 0x330FF1CE0FF1CE77 }
 

Functions

 M0_BOB_DEFINE (static, &pump_bob, m0_cm_cp_pump)
 
static struct m0_cmpump2cm (const struct m0_cm_cp_pump *cp_pump)
 
static bool cm_cp_pump_invariant (const struct m0_cm_cp_pump *cp_pump)
 
static void pump_move (struct m0_cm_cp_pump *cp_fom, int rc, int phase)
 
static int cpp_alloc (struct m0_cm_cp_pump *cp_pump)
 
static int cpp_data_next (struct m0_cm_cp_pump *cp_pump)
 
static int cpp_complete (struct m0_cm_cp_pump *cp_pump)
 
static int cpp_stop (struct m0_cm_cp_pump *cp_pump)
 
static int cpp_fail (struct m0_cm_cp_pump *cp_pump)
 
static uint64_t cm_cp_pump_fom_locality (const struct m0_fom *fom)
 
static int cm_cp_pump_fom_tick (struct m0_fom *fom)
 
static void cm_cp_pump_fom_fini (struct m0_fom *fom)
 
bool m0_cm_cp_pump_is_complete (const struct m0_cm_cp_pump *cp_pump)
 
M0_INTERNAL void m0_cm_cp_pump_init (struct m0_cm_type *cmtype)
 
M0_INTERNAL void m0_cm_cp_pump_prepare (struct m0_cm *cm)
 
M0_INTERNAL void m0_cm_cp_pump_destroy (struct m0_cm *cm)
 
static void complete_wakeup (struct m0_sm_group *grp, struct m0_sm_ast *ast)
 
static bool pump_cb (struct m0_clink *link)
 
M0_INTERNAL void m0_cm_cp_pump_start (struct m0_cm *cm)
 

Variables

static const struct m0_bob_type pump_bob
 
static const struct m0_fom_type_ops cm_cp_pump_fom_type_ops
 
static struct m0_sm_state_descr cm_cp_pump_sd [CPP_NR]
 
struct m0_sm_trans_descr cm_cp_pump_td []
 
struct m0_sm_conf cm_cp_pump_conf
 
static int(* pump_action [])(struct m0_cm_cp_pump *cp_pump)
 
static const struct m0_fom_ops cm_cp_pump_fom_ops
 

Macro Definition Documentation

◆ M0_TRACE_SUBSYSTEM

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_CM

Definition at line 23 of file pump.c.