Motr  M0
domain.h File Reference
#include "be/engine.h"
#include "be/seg0.h"
#include "be/log.h"
#include "be/pd.h"
#include "be/log_discard.h"
#include "stob/stob.h"
#include "stob/stob_xc.h"
#include "lib/tlist.h"
#include "module/module.h"
Include dependency graph for domain.h:

Go to the source code of this file.

Data Structures

struct  m0_be_0type_seg_cfg
 
struct  m0_be_domain_cfg
 
struct  m0_be_domain
 

Macros

#define __MOTR_BE_DOMAIN_H__
 

Enumerations

enum  {
  M0_BE_DOMAIN_LEVEL_INIT, M0_BE_DOMAIN_LEVEL_0TYPES_REGISTER, M0_BE_DOMAIN_LEVEL_MKFS_STOB_DOMAIN_DESTROY, M0_BE_DOMAIN_LEVEL_MKFS_STOB_DOMAIN_CREATE,
  M0_BE_DOMAIN_LEVEL_NORMAL_STOB_DOMAIN_INIT, M0_BE_DOMAIN_LEVEL_LOG_CONFIGURE, M0_BE_DOMAIN_LEVEL_MKFS_LOG_CREATE, M0_BE_DOMAIN_LEVEL_NORMAL_LOG_OPEN,
  M0_BE_DOMAIN_LEVEL_PD_INIT, M0_BE_DOMAIN_LEVEL_NORMAL_SEG0_OPEN, M0_BE_DOMAIN_LEVEL_NORMAL_0TYPES_VISIT, M0_BE_DOMAIN_LEVEL_LOG_DISCARD_INIT,
  M0_BE_DOMAIN_LEVEL_ENGINE_INIT, M0_BE_DOMAIN_LEVEL_ENGINE_START, M0_BE_DOMAIN_LEVEL_MKFS_SEG0_CREATE, M0_BE_DOMAIN_LEVEL_MKFS_SEG0_STRUCTS_CREATE,
  M0_BE_DOMAIN_LEVEL_MKFS_SEG0_0TYPE, M0_BE_DOMAIN_LEVEL_MKFS_SEGMENTS_CREATE, M0_BE_DOMAIN_LEVEL_READY
}
 

Functions

struct m0_be_allocator_call_stat M0_XCA_DOMAIN (be)
 
M0_INTERNAL int m0_be_segobj_opt_next (struct m0_be_seg *dict, const struct m0_be_0type *objtype, struct m0_buf *opt, char **suffix)
 
M0_INTERNAL int m0_be_segobj_opt_begin (struct m0_be_seg *dict, const struct m0_be_0type *objtype, struct m0_buf *opt, char **suffix)
 
M0_INTERNAL void m0_be_domain_module_setup (struct m0_be_domain *dom, const struct m0_be_domain_cfg *cfg)
 
M0_INTERNAL void be_domain_log_cleanup (const char *stob_domain_location, struct m0_be_log_cfg *log_cfg, bool create)
 
M0_INTERNAL void m0_be_domain_cleanup_by_location (const char *stob_domain_location)
 
M0_INTERNAL struct m0_be_txm0_be_domain_tx_find (struct m0_be_domain *dom, uint64_t id)
 
M0_INTERNAL struct m0_be_enginem0_be_domain_engine (struct m0_be_domain *dom)
 
M0_INTERNAL struct m0_be_segm0_be_domain_seg0_get (struct m0_be_domain *dom)
 
M0_INTERNAL struct m0_be_logm0_be_domain_log (struct m0_be_domain *dom)
 
M0_INTERNAL bool m0_be_domain_is_locked (const struct m0_be_domain *dom)
 
M0_INTERNAL struct m0_be_segm0_be_domain_seg (const struct m0_be_domain *dom, const void *addr)
 
M0_INTERNAL struct m0_be_segm0_be_domain_seg_by_id (const struct m0_be_domain *dom, uint64_t id)
 
M0_INTERNAL struct m0_be_segm0_be_domain_seg_first (const struct m0_be_domain *dom)
 
M0_INTERNAL void m0_be_domain_seg_create_credit (struct m0_be_domain *dom, const struct m0_be_0type_seg_cfg *seg_cfg, struct m0_be_tx_credit *cred)
 
M0_INTERNAL void m0_be_domain_seg_destroy_credit (struct m0_be_domain *dom, struct m0_be_seg *seg, struct m0_be_tx_credit *cred)
 
M0_INTERNAL int m0_be_domain_seg_create (struct m0_be_domain *dom, struct m0_be_tx *tx, const struct m0_be_0type_seg_cfg *seg_cfg, struct m0_be_seg **out)
 
M0_INTERNAL int m0_be_domain_seg_destroy (struct m0_be_domain *dom, struct m0_be_tx *tx, struct m0_be_seg *seg)
 
M0_INTERNAL void m0_be_domain__0type_register (struct m0_be_domain *dom, struct m0_be_0type *type)
 
M0_INTERNAL void m0_be_domain__0type_unregister (struct m0_be_domain *dom, struct m0_be_0type *type)
 
M0_INTERNAL void m0_be_domain_tx_size_max (struct m0_be_domain *dom, struct m0_be_tx_credit *cred, m0_bcount_t *payload_size)
 
M0_INTERNAL void m0_be_domain__group_limits (struct m0_be_domain *dom, uint32_t *group_nr, uint32_t *tx_per_group)
 
M0_INTERNAL bool m0_be_domain_is_stob_log (struct m0_be_domain *dom, const struct m0_stob_id *stob_id)
 
M0_INTERNAL bool m0_be_domain_is_stob_seg (struct m0_be_domain *dom, const struct m0_stob_id *stob_id)
 
M0_INTERNAL struct m0_be_segm0_be_domain_seg_by_addr (struct m0_be_domain *dom, void *addr)
 
M0_INTERNAL bool m0_be_domain_seg_is_valid (struct m0_be_domain *dom, struct m0_be_seg *seg)
 

Variables

uint64_t bsc_stob_key
 
bool bsc_preallocate
 
m0_bcount_t bsc_size
 
void * bsc_addr
 
const char * bsc_stob_create_cfg
 
struct m0_be_domain_cfg M0_XCA_DOMAIN
 

Macro Definition Documentation

◆ __MOTR_BE_DOMAIN_H__

#define __MOTR_BE_DOMAIN_H__

Definition at line 26 of file domain.h.

Variable Documentation

◆ bsc_addr

void* bsc_addr

Definition at line 1019 of file domain.h.

◆ bsc_preallocate

bool bsc_preallocate

Definition at line 1017 of file domain.h.

◆ bsc_size

m0_bcount_t bsc_size

Definition at line 1018 of file domain.h.

◆ bsc_stob_create_cfg

const char* bsc_stob_create_cfg

Definition at line 1020 of file domain.h.

◆ bsc_stob_key

uint64_t bsc_stob_key

Definition at line 1016 of file domain.h.