25 #ifndef __MOTR_IOSERVICE_STORAGE_DEV_H__ 26 #define __MOTR_IOSERVICE_STORAGE_DEV_H__ M0_INTERNAL struct m0_storage_dev * m0_storage_devs_find_by_cid(struct m0_storage_devs *devs, uint64_t cid)
struct m0_parallel_pool sds_pool
struct m0_tlink isd_linkage
struct m0_stob * isd_stob
m0_bcount_t sds_free_blocks
M0_INTERNAL int m0_storage_dev_stob_find(struct m0_storage_devs *devs, struct m0_stob_id *sid, struct m0_stob **stob)
M0_INTERNAL void m0_storage_dev_attach(struct m0_storage_dev *dev, struct m0_storage_devs *devs)
M0_INTERNAL void m0_storage_dev_stob_put(struct m0_storage_devs *devs, struct m0_stob *stob)
M0_INTERNAL void m0_storage_dev_get(struct m0_storage_dev *dev)
struct m0_stob_domain * isd_domain
enum m0_ha_obj_state isd_ha_state
struct m0_stob_domain * sds_back_domain
M0_INTERNAL void m0_storage_devs_use_directio(struct m0_storage_devs *devs, bool directio)
enum m0_storage_dev_type sds_type
M0_INTERNAL int m0_storage_dev_new_by_conf(struct m0_storage_devs *devs, struct m0_conf_sdev *sdev, bool force, struct m0_storage_dev **dev)
M0_INTERNAL int m0_storage_dev_new(struct m0_storage_devs *devs, uint64_t cid, const char *path, uint64_t size, struct m0_conf_sdev *conf_sdev, bool force, struct m0_storage_dev **dev)
M0_INTERNAL void m0_storage_devs_lock(struct m0_storage_devs *devs)
static struct m0_stob * stob
struct m0_clink isd_clink
static struct m0_be_seg * be_seg
M0_INTERNAL int m0_storage_dev_stob_destroy(struct m0_storage_devs *devs, struct m0_stob *stob, struct m0_dtx *dtx)
static struct m0_stob_domain * dom
struct m0_mutex isd_detached_lock
enum m0_conf_service_type isd_srv_type
M0_INTERNAL void m0_storage_devs_fini(struct m0_storage_devs *devs)
M0_INTERNAL int m0_storage_dev_format(struct m0_storage_dev *dev, uint64_t cid)
enum m0_storage_dev_type isd_type
M0_INTERNAL struct m0_storage_dev * m0_storage_devs_find_by_dom(struct m0_storage_devs *devs, struct m0_stob_domain *dom)
M0_INTERNAL void m0_storage_devs_detach_all(struct m0_storage_devs *devs)
struct m0_be_seg * sds_be_seg
M0_INTERNAL int m0_storage_devs_init(struct m0_storage_devs *devs, enum m0_storage_dev_type type, struct m0_be_seg *be_seg, struct m0_stob_domain *bstore_dom, struct m0_reqh *reqh)
struct m0_clink sds_conf_exp
M0_INTERNAL void m0_storage_dev_destroy(struct m0_storage_dev *dev)
m0_bcount_t sds_block_size
M0_INTERNAL void m0_storage_devs_locks_disable(struct m0_storage_devs *devs)
M0_INTERNAL void m0_storage_dev_detach(struct m0_storage_dev *dev)
M0_INTERNAL void m0_storage_dev_space(struct m0_storage_dev *dev, struct m0_storage_space *space)
M0_INTERNAL int m0_storage_dev_stob_create(struct m0_storage_devs *devs, struct m0_stob_id *sid, struct m0_dtx *dtx)
M0_TL_DECLARE(storage_dev, M0_EXTERN, struct m0_storage_dev)
M0_TL_DESCR_DECLARE(storage_dev, M0_EXTERN)
m0_bcount_t sds_avail_blocks
struct m0_chan isd_detached_chan
M0_INTERNAL void m0_storage_devs_unlock(struct m0_storage_devs *devs)
M0_INTERNAL void m0_storage_dev_put(struct m0_storage_dev *dev)
m0_bcount_t sds_total_size
M0_INTERNAL int m0_storage_devs_fdatasync(struct m0_storage_devs *sdevs)
struct m0_clink sds_conf_ready_async