Motr  M0
tx_regmap.h File Reference
#include "lib/time.h"
#include "be/seg.h"
#include "be/tx_credit.h"
Include dependency graph for tx_regmap.h:

Go to the source code of this file.

Data Structures

struct  m0_be_reg_d
 
struct  m0_be_reg_d_tree
 
struct  m0_be_regmap_ops
 
struct  m0_be_regmap
 
struct  m0_be_reg_area
 
struct  m0_be_reg_area_merger
 

Macros

#define __MOTR_BE_TX_REGMAP_H__
 
#define M0_BE_REG_D(reg, buf)
 
#define M0_BE_REG_D_CREDIT(rd)   M0_BE_TX_CREDIT(1, (rd)->rd_reg.br_size)
 
#define M0_BE_REG_AREA_FORALL(ra, rd)
 

Enumerations

enum  m0_be_reg_area_type { M0_BE_REG_AREA_DATA_COPY, M0_BE_REG_AREA_DATA_NOCOPY }
 

Functions

M0_INTERNAL bool m0_be_reg_d__invariant (const struct m0_be_reg_d *rd)
 
M0_INTERNAL bool m0_be_reg_d_is_in (const struct m0_be_reg_d *rd, void *ptr)
 
M0_INTERNAL int m0_be_rdt_init (struct m0_be_reg_d_tree *rdt, size_t size_max)
 
M0_INTERNAL void m0_be_rdt_fini (struct m0_be_reg_d_tree *rdt)
 
M0_INTERNAL bool m0_be_rdt__invariant (const struct m0_be_reg_d_tree *rdt)
 
M0_INTERNAL size_t m0_be_rdt_size (const struct m0_be_reg_d_tree *rdt)
 
M0_INTERNAL struct m0_be_reg_dm0_be_rdt_find (const struct m0_be_reg_d_tree *rdt, void *addr)
 
M0_INTERNAL struct m0_be_reg_dm0_be_rdt_next (const struct m0_be_reg_d_tree *rdt, struct m0_be_reg_d *prev)
 
M0_INTERNAL void m0_be_rdt_ins (struct m0_be_reg_d_tree *rdt, const struct m0_be_reg_d *rd)
 
M0_INTERNAL struct m0_be_reg_dm0_be_rdt_del (struct m0_be_reg_d_tree *rdt, const struct m0_be_reg_d *rd)
 
M0_INTERNAL void m0_be_rdt_reset (struct m0_be_reg_d_tree *rdt)
 
M0_INTERNAL int m0_be_regmap_init (struct m0_be_regmap *rm, const struct m0_be_regmap_ops *ops, void *ops_data, size_t size_max, bool split_on_absorb)
 
M0_INTERNAL void m0_be_regmap_fini (struct m0_be_regmap *rm)
 
M0_INTERNAL bool m0_be_regmap__invariant (const struct m0_be_regmap *rm)
 
M0_INTERNAL void m0_be_regmap_add (struct m0_be_regmap *rm, struct m0_be_reg_d *rd)
 
M0_INTERNAL void m0_be_regmap_del (struct m0_be_regmap *rm, const struct m0_be_reg_d *rd)
 
M0_INTERNAL struct m0_be_reg_dm0_be_regmap_first (struct m0_be_regmap *rm)
 
M0_INTERNAL struct m0_be_reg_dm0_be_regmap_next (struct m0_be_regmap *rm, struct m0_be_reg_d *prev)
 
M0_INTERNAL size_t m0_be_regmap_size (const struct m0_be_regmap *rm)
 
M0_INTERNAL void m0_be_regmap_reset (struct m0_be_regmap *rm)
 
M0_INTERNAL int m0_be_reg_area_init (struct m0_be_reg_area *ra, const struct m0_be_tx_credit *prepared, enum m0_be_reg_area_type type)
 
M0_INTERNAL void m0_be_reg_area_fini (struct m0_be_reg_area *ra)
 
M0_INTERNAL bool m0_be_reg_area__invariant (const struct m0_be_reg_area *ra)
 
M0_INTERNAL void m0_be_reg_area_used (struct m0_be_reg_area *ra, struct m0_be_tx_credit *used)
 
M0_INTERNAL void m0_be_reg_area_prepared (struct m0_be_reg_area *ra, struct m0_be_tx_credit *prepared)
 
M0_INTERNAL void m0_be_reg_area_captured (struct m0_be_reg_area *ra, struct m0_be_tx_credit *captured)
 
M0_INTERNAL void m0_be_reg_area_capture (struct m0_be_reg_area *ra, struct m0_be_reg_d *rd)
 
M0_INTERNAL void m0_be_reg_area_uncapture (struct m0_be_reg_area *ra, const struct m0_be_reg_d *rd)
 
M0_INTERNAL void m0_be_reg_area_merge_in (struct m0_be_reg_area *ra, struct m0_be_reg_area *src)
 
M0_INTERNAL void m0_be_reg_area_reset (struct m0_be_reg_area *ra)
 
M0_INTERNAL void m0_be_reg_area_optimize (struct m0_be_reg_area *ra)
 
M0_INTERNAL struct m0_be_reg_dm0_be_reg_area_first (struct m0_be_reg_area *ra)
 
M0_INTERNAL struct m0_be_reg_dm0_be_reg_area_next (struct m0_be_reg_area *ra, struct m0_be_reg_d *prev)
 
M0_INTERNAL int m0_be_reg_area_merger_init (struct m0_be_reg_area_merger *brm, int reg_area_nr_max)
 
M0_INTERNAL void m0_be_reg_area_merger_fini (struct m0_be_reg_area_merger *brm)
 
M0_INTERNAL void m0_be_reg_area_merger_reset (struct m0_be_reg_area_merger *brm)
 
M0_INTERNAL void m0_be_reg_area_merger_add (struct m0_be_reg_area_merger *brm, struct m0_be_reg_area *ra)
 
M0_INTERNAL void m0_be_reg_area_merger_merge_to (struct m0_be_reg_area_merger *brm, struct m0_be_reg_area *ra)
 

Macro Definition Documentation

◆ __MOTR_BE_TX_REGMAP_H__

#define __MOTR_BE_TX_REGMAP_H__

Definition at line 25 of file tx_regmap.h.