Motr  M0
log_store.h File Reference
#include "lib/buf.h"
#include "lib/types.h"
#include "module/module.h"
#include "stob/stob.h"
#include "be/fmt.h"
Include dependency graph for log_store.h:

Go to the source code of this file.

Data Structures

struct  m0_be_log_store_cfg
 
struct  m0_be_log_store
 

Macros

#define __MOTR_BE_LOG_STORE_H__
 

Enumerations

enum  {
  M0_BE_LOG_STORE_LEVEL_ASSIGNS, M0_BE_LOG_STORE_LEVEL_STOB_DOMAIN, M0_BE_LOG_STORE_LEVEL_STOB_FIND, M0_BE_LOG_STORE_LEVEL_STOB_LOCATE,
  M0_BE_LOG_STORE_LEVEL_STOB_CREATE, M0_BE_LOG_STORE_LEVEL_ZERO, M0_BE_LOG_STORE_LEVEL_LS_HEADER_INIT, M0_BE_LOG_STORE_LEVEL_LS_HEADER_BUF_ALLOC,
  M0_BE_LOG_STORE_LEVEL_HEADER_CREATE, M0_BE_LOG_STORE_LEVEL_HEADER_ENCODE, M0_BE_LOG_STORE_LEVEL_HEADER_IO, M0_BE_LOG_STORE_LEVEL_HEADER_DECODE,
  M0_BE_LOG_STORE_LEVEL_RBUF_ARR_ALLOC, M0_BE_LOG_STORE_LEVEL_RBUF_INIT, M0_BE_LOG_STORE_LEVEL_RBUF_ASSIGN, M0_BE_LOG_STORE_LEVEL_READY
}
 
enum  m0_be_log_store_io_type { M0_BE_LOG_STORE_IO_READ, M0_BE_LOG_STORE_IO_WRITE }
 

Functions

M0_INTERNAL bool m0_be_log_store__invariant (struct m0_be_log_store *ls)
 
M0_INTERNAL int m0_be_log_store_open (struct m0_be_log_store *ls, struct m0_be_log_store_cfg *ls_cfg)
 
M0_INTERNAL void m0_be_log_store_close (struct m0_be_log_store *ls)
 
M0_INTERNAL int m0_be_log_store_create (struct m0_be_log_store *ls, struct m0_be_log_store_cfg *ls_cfg)
 
M0_INTERNAL void m0_be_log_store_destroy (struct m0_be_log_store *ls)
 
M0_INTERNAL void m0_be_log_store_module_setup (struct m0_be_log_store *ls, struct m0_be_log_store_cfg *ls_cfg, bool create_mode)
 
M0_INTERNAL uint32_t m0_be_log_store_bshift (struct m0_be_log_store *ls)
 
M0_INTERNAL m0_bcount_t m0_be_log_store_buf_size (struct m0_be_log_store *ls)
 
M0_INTERNAL void m0_be_log_store_io_credit (struct m0_be_log_store *ls, struct m0_be_io_credit *accum)
 
M0_INTERNAL void m0_be_log_store_io_translate (struct m0_be_log_store *ls, m0_bindex_t position, struct m0_be_io *bio)
 
M0_INTERNAL int m0_be_log_store_io_window (struct m0_be_log_store *ls, m0_bindex_t offset, m0_bcount_t *length)
 
M0_INTERNAL void m0_be_log_store_io_discard (struct m0_be_log_store *ls, m0_bindex_t offset, struct m0_be_op *op)
 
M0_INTERNAL bool m0_be_log_store_overwrites (struct m0_be_log_store *ls, m0_bindex_t index, m0_bcount_t size, m0_bindex_t position)
 
M0_INTERNAL struct m0_bufm0_be_log_store_rbuf_write_buf (struct m0_be_log_store *ls)
 
M0_INTERNAL struct m0_bufm0_be_log_store_rbuf_read_buf_first (struct m0_be_log_store *ls, unsigned *iter)
 
M0_INTERNAL struct m0_bufm0_be_log_store_rbuf_read_buf_next (struct m0_be_log_store *ls, unsigned *iter)
 
M0_INTERNAL struct m0_be_log_iom0_be_log_store_rbuf_io_first (struct m0_be_log_store *ls, enum m0_be_log_store_io_type io_type, struct m0_be_op **op, unsigned *iter)
 
M0_INTERNAL struct m0_be_log_iom0_be_log_store_rbuf_io_next (struct m0_be_log_store *ls, enum m0_be_log_store_io_type io_type, struct m0_be_op **op, unsigned *iter)
 
M0_INTERNAL void m0_be_log_store_rbuf_io_reset (struct m0_be_log_store *ls, enum m0_be_log_store_io_type io_type)
 
M0_INTERNAL bool m0_be_log_store_contains_stob (struct m0_be_log_store *ls, const struct m0_stob_id *stob_id)
 

Macro Definition Documentation

◆ __MOTR_BE_LOG_STORE_H__

#define __MOTR_BE_LOG_STORE_H__

Definition at line 27 of file log_store.h.