Motr  M0
device_foms.c File Reference
#include "lib/trace.h"
#include "lib/assert.h"
#include "lib/misc.h"
#include "lib/memory.h"
#include "lib/tlist.h"
#include "lib/finject.h"
#include "conf/diter.h"
#include "conf/obj.h"
#include "conf/obj_ops.h"
#include "conf/helpers.h"
#include "fop/fop.h"
#include "fop/fom_generic.h"
#include "pool/pool.h"
#include "pool/pool_machine.h"
#include "reqh/reqh.h"
#include "sss/device_fops.h"
#include "sss/device_foms.h"
#include "motr/setup.h"
#include "ioservice/storage_dev.h"
Include dependency graph for device_foms.c:

Go to the source code of this file.

Data Structures

struct  m0_sss_dfom
 

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_SSS
 

Enumerations

enum  sss_device_fom_stage { SSS_DEVICE_FOM_STAGE_STOB, SSS_DEVICE_FOM_STAGE_POOL_MACHINE }
 

Functions

static int sss_device_fom_create (struct m0_fop *fop, struct m0_fom **out, struct m0_reqh *reqh)
 
static int sss_device_fom_tick (struct m0_fom *fom)
 
static void sss_device_fom_fini (struct m0_fom *fom)
 
static size_t sss_device_fom_home_locality (const struct m0_fom *fom)
 
static bool sss_dfom_confc_ctx_check_cb (struct m0_clink *clink)
 
static uint32_t sss_dfom_device_cmd (struct m0_sss_dfom *dfom)
 
static void sss_device_fom_switch (struct m0_fom *fom)
 
static int sss_confc_ctx_init (struct m0_sss_dfom *dfom)
 
static int sss_device_fom_conf_obj_open (struct m0_sss_dfom *dfom, struct m0_fid *fid)
 
static int sss_device_fom_disk_opening (struct m0_fom *fom)
 
static bool sss_device_fom_conf_obj_ha_state_cb (struct m0_clink *link)
 
static void sss_device_fom_ha_init (struct m0_sss_dfom *dfom, struct m0_fid *fid)
 
static void sss_device_fom_ha_fini (struct m0_sss_dfom *dfom)
 
static void sss_device_fom_ha_update (struct m0_sss_dfom *dfom)
 
static int sss_device_fom_disk_ha_state_get (struct m0_fom *fom)
 
static int sss_disk_info_use (struct m0_sss_dfom *dfom)
 
static int sss_device_fom_disk_opened (struct m0_fom *fom)
 
static bool _obj_is_sdev (const struct m0_conf_obj *obj)
 
static bool sss_device_find_has_svc (struct m0_fom *fom, struct m0_fid *svc_fid)
 
static int sss_device_fom_sdev_iter (struct m0_fom *fom)
 
static bool sss_device_fom_sdev_iter_cb (struct m0_clink *clink)
 
static int sss_device_fom_root_info_use (struct m0_sss_dfom *dfom, struct m0_conf_obj **root_obj)
 
static int sss_device_fom_sdev_iter_init (struct m0_sss_dfom *dfom, struct m0_conf_obj *root_obj)
 
static int sss_device_fom_fs_opened (struct m0_fom *fom)
 
static int sss_device_fom_sdev_opening (struct m0_fom *fom)
 
static int sss_device_stob_attach (struct m0_fom *fom)
 
static int sss_device_pool_machine_attach (struct m0_fom *fom)
 
static int sss_device_pool_machine_detach (struct m0_fom *fom)
 
static int sss_device_stob_detach (struct m0_fom *fom, bool arm_wakeup)
 
static int sss_device_format (struct m0_fom *fom)
 

Variables

struct m0_reqh_service_type m0_ios_type
 
static struct m0_fom_ops sss_device_fom_ops
 
const struct m0_fom_type_ops sss_device_fom_type_ops
 
struct m0_sm_state_descr sss_device_fom_phases_desc []
 
const struct m0_sm_conf sss_device_fom_conf
 

Macro Definition Documentation

◆ M0_TRACE_SUBSYSTEM

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_SSS

Definition at line 22 of file device_foms.c.