Motr  M0
tx_group.h File Reference
#include "lib/tlist.h"
#include "be/tx_credit.h"
#include "be/tx_group_format.h"
#include "be/tx_group_fom.h"
#include "be/tx_regmap.h"
#include "be/tx.h"
Include dependency graph for tx_group.h:

Go to the source code of this file.

Data Structures

struct  m0_be_tx_group_cfg
 
struct  m0_be_tx_group
 

Macros

#define __MOTR_BE_TX_GROUP_H__
 
#define M0_BE_TX_GROUP_TX_FORALL(gr, tx)   m0_tl_for(grp, &(gr)->tg_txs, (tx))
 
#define M0_BE_TX_GROUP_TX_ENDFOR   m0_tl_endfor
 

Enumerations

enum  m0_be_tx_group_state {
  M0_BGS_READY, M0_BGS_OPEN, M0_BGS_FROZEN, M0_BGS_CLOSED,
  M0_BGS_NR
}
 

Functions

M0_INTERNAL bool m0_be_tx_group__invariant (struct m0_be_tx_group *gr)
 
M0_INTERNAL int m0_be_tx_group_init (struct m0_be_tx_group *gr, struct m0_be_tx_group_cfg *gr_cfg)
 
M0_INTERNAL void m0_be_tx_group_fini (struct m0_be_tx_group *gr)
 
M0_INTERNAL int m0_be_tx_group_start (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_stop (struct m0_be_tx_group *gr)
 
M0_INTERNAL int m0_be_tx_group_tx_add (struct m0_be_tx_group *gr, struct m0_be_tx *tx)
 
M0_INTERNAL size_t m0_be_tx_group_tx_nr (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_tx_closed (struct m0_be_tx_group *gr, struct m0_be_tx *tx)
 
M0_INTERNAL void m0_be_tx_group_close (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_stable (struct m0_be_tx_group *gr)
 
M0_INTERNAL struct m0_sm_groupm0_be_tx_group__sm_group (struct m0_be_tx_group *gr)
 
M0_INTERNAL bool m0_be_tx_group_is_recovering (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_reset (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_prepare (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_tx_del (struct m0_be_tx_group *gr, struct m0_be_tx *tx)
 
M0_INTERNAL void m0_be_tx_group_open (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group__tx_state_post (struct m0_be_tx_group *gr, enum m0_be_tx_state state, bool del_tx_from_group)
 
M0_INTERNAL int m0_be_tx_group__allocate (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group__deallocate (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_seg_place_prepare (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_seg_place (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_encode (struct m0_be_tx_group *gr)
 
M0_INTERNAL void m0_be_tx_group_log_write (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_recovery_prepare (struct m0_be_tx_group *gr, struct m0_be_log *log)
 
M0_INTERNAL void m0_be_tx_group_log_read (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL int m0_be_tx_group_decode (struct m0_be_tx_group *gr)
 
M0_INTERNAL int m0_be_tx_group_reconstruct (struct m0_be_tx_group *gr, struct m0_sm_group *sm_grp)
 
M0_INTERNAL void m0_be_tx_group_reconstruct_tx_open (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_reconstruct_tx_close (struct m0_be_tx_group *gr, struct m0_be_op *op_gc)
 
M0_INTERNAL int m0_be_tx_group_reapply (struct m0_be_tx_group *gr, struct m0_be_op *op)
 
M0_INTERNAL void m0_be_tx_group_discard (struct m0_be_log_discard *ld, struct m0_be_log_discard_item *ldi)
 
M0_INTERNAL void m0_be_tx_group_seg_io_credit (struct m0_be_tx_group_cfg *gr_cfg, struct m0_be_io_credit *io_cred)
 
 M0_TL_DESCR_DECLARE (grp, M0_EXTERN)
 
 M0_TL_DECLARE (grp, M0_INTERNAL, struct m0_be_tx)
 

Macro Definition Documentation

◆ __MOTR_BE_TX_GROUP_H__

#define __MOTR_BE_TX_GROUP_H__

Definition at line 25 of file tx_group.h.