Motr  M0
nucleus.h File Reference
#include "lib/mutex.h"
#include "lib/tlist.h"
#include "lib/types.h"
Include dependency graph for nucleus.h:

Go to the source code of this file.

Data Structures

struct  m0_dtm_hi
 
struct  m0_dtm_hi_ops
 
struct  m0_dtm_up
 
struct  m0_dtm_op
 
struct  m0_dtm_op_ops
 
struct  m0_dtm_nu
 

Macros

#define __MOTR_DTM_NUCLEUS_H__
 

Typedefs

typedef uint64_t m0_dtm_ver_t
 

Enumerations

enum  m0_dtm_state {
  M0_DOS_LIMBO, M0_DOS_FUTURE, M0_DOS_PREPARE, M0_DOS_INPROGRESS,
  M0_DOS_VOLATILE, M0_DOS_PERSISTENT, M0_DOS_STABLE, M0_DOS_NR
}
 
enum  m0_dtm_hi_flags {
  M0_DHF_SHARED = 1ULL << 0, M0_DHF_FULL = 1ULL << 1, M0_DHF_OWNED = 1ULL << 2, M0_DHF_BUSY = 1ULL << 3,
  M0_DHF_LAST = 1ULL << 4
}
 
enum  m0_dtm_up_rule {
  M0_DUR_INC, M0_DUR_SET, M0_DUR_NOT, M0_DUR_APP,
  M0_DUR_NR
}
 

Functions

M0_INTERNAL bool m0_dtm_hi_invariant (const struct m0_dtm_hi *hi)
 
M0_INTERNAL bool m0_dtm_up_invariant (const struct m0_dtm_up *up)
 
M0_INTERNAL bool m0_dtm_op_invariant (const struct m0_dtm_op *op)
 
M0_INTERNAL void m0_dtm_op_init (struct m0_dtm_op *op, struct m0_dtm_nu *nu)
 
M0_INTERNAL void m0_dtm_op_prepared (const struct m0_dtm_op *op)
 
M0_INTERNAL void m0_dtm_op_done (const struct m0_dtm_op *op)
 
M0_INTERNAL void m0_dtm_op_close (const struct m0_dtm_op *op)
 
M0_INTERNAL void m0_dtm_op_del (struct m0_dtm_op *op)
 
M0_INTERNAL void m0_dtm_op_fini (struct m0_dtm_op *op)
 
M0_INTERNAL void m0_dtm_hi_init (struct m0_dtm_hi *hi, struct m0_dtm_nu *nu)
 
M0_INTERNAL void m0_dtm_hi_fini (struct m0_dtm_hi *hi)
 
M0_INTERNAL void m0_dtm_up_init (struct m0_dtm_up *up, struct m0_dtm_hi *hi, struct m0_dtm_op *op, enum m0_dtm_up_rule rule, m0_dtm_ver_t ver, m0_dtm_ver_t orig_ver)
 
M0_INTERNAL void m0_dtm_up_ver_set (struct m0_dtm_up *up, m0_dtm_ver_t ver, m0_dtm_ver_t orig_ver)
 
M0_INTERNAL void m0_dtm_nu_init (struct m0_dtm_nu *nu)
 
M0_INTERNAL void m0_dtm_nu_fini (struct m0_dtm_nu *nu)
 
M0_INTERNAL struct m0_dtm_upm0_dtm_up_prior (struct m0_dtm_up *up)
 
M0_INTERNAL struct m0_dtm_upm0_dtm_up_later (struct m0_dtm_up *up)
 
M0_INTERNAL void m0_dtm_nuclei_init (void)
 
M0_INTERNAL void m0_dtm_nuclei_fini (void)
 

Macro Definition Documentation

◆ __MOTR_DTM_NUCLEUS_H__

#define __MOTR_DTM_NUCLEUS_H__

Definition at line 27 of file nucleus.h.