Motr  M0
storage_dev.h File Reference
#include "lib/tlist.h"
#include "lib/mutex.h"
#include "lib/thread_pool.h"
#include "lib/chan.h"
#include "ha/note.h"
#include "conf/obj.h"
#include "sm/sm.h"
Include dependency graph for storage_dev.h:

Go to the source code of this file.

Data Structures

struct  m0_storage_dev
 
struct  m0_storage_devs
 
struct  m0_storage_space
 

Macros

#define __MOTR_IOSERVICE_STORAGE_DEV_H__
 

Enumerations

enum  m0_storage_dev_type { M0_STORAGE_DEV_TYPE_LINUX = 1, M0_STORAGE_DEV_TYPE_AD }
 

Functions

 M0_TL_DESCR_DECLARE (storage_dev, M0_EXTERN)
 
 M0_TL_DECLARE (storage_dev, M0_EXTERN, struct m0_storage_dev)
 
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)
 
M0_INTERNAL void m0_storage_devs_fini (struct m0_storage_devs *devs)
 
M0_INTERNAL void m0_storage_devs_lock (struct m0_storage_devs *devs)
 
M0_INTERNAL void m0_storage_devs_unlock (struct m0_storage_devs *devs)
 
M0_INTERNAL void m0_storage_devs_use_directio (struct m0_storage_devs *devs, bool directio)
 
M0_INTERNAL void m0_storage_devs_locks_disable (struct m0_storage_devs *devs)
 
M0_INTERNAL struct m0_storage_devm0_storage_devs_find_by_cid (struct m0_storage_devs *devs, uint64_t cid)
 
M0_INTERNAL struct m0_storage_devm0_storage_devs_find_by_dom (struct m0_storage_devs *devs, struct m0_stob_domain *dom)
 
M0_INTERNAL void m0_storage_dev_get (struct m0_storage_dev *dev)
 
M0_INTERNAL void m0_storage_dev_put (struct m0_storage_dev *dev)
 
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_dev_destroy (struct m0_storage_dev *dev)
 
M0_INTERNAL void m0_storage_dev_attach (struct m0_storage_dev *dev, struct m0_storage_devs *devs)
 
M0_INTERNAL void m0_storage_dev_detach (struct m0_storage_dev *dev)
 
M0_INTERNAL void m0_storage_devs_detach_all (struct m0_storage_devs *devs)
 
M0_INTERNAL void m0_storage_dev_space (struct m0_storage_dev *dev, struct m0_storage_space *space)
 
M0_INTERNAL int m0_storage_dev_format (struct m0_storage_dev *dev, uint64_t cid)
 
M0_INTERNAL int m0_storage_devs_fdatasync (struct m0_storage_devs *sdevs)
 
M0_INTERNAL int m0_storage_dev_stob_create (struct m0_storage_devs *devs, struct m0_stob_id *sid, struct m0_dtx *dtx)
 
M0_INTERNAL int m0_storage_dev_stob_destroy (struct m0_storage_devs *devs, struct m0_stob *stob, struct m0_dtx *dtx)
 
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_stob_put (struct m0_storage_devs *devs, struct m0_stob *stob)
 

Macro Definition Documentation

◆ __MOTR_IOSERVICE_STORAGE_DEV_H__

#define __MOTR_IOSERVICE_STORAGE_DEV_H__

Definition at line 26 of file storage_dev.h.