Motr  M0
dtx.c File Reference
#include "lib/assert.h"
#include "lib/memory.h"
#include "lib/errno.h"
#include "dtm/catalogue.h"
#include "dtm/dtm_internal.h"
#include "dtm/history.h"
#include "dtm/dtm.h"
#include "dtm/dtx.h"
#include "lib/trace.h"
Include dependency graph for dtx.c:

Go to the source code of this file.

Data Structures

struct  m0_dtm_dtx_party
 

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_DTM
 

Enumerations

enum  { M0_DTM_HTYPE_DTX = 8, M0_DTM_HTYPE_DTX_SRV = 9 }
 

Functions

static struct m0_dtm_controlhdtx_get (struct m0_dtm_dtx *dtx, struct m0_dtm_remote *rem)
 
static struct m0_dtm_historydtx_srv_alloc (struct m0_dtm *dtm, const struct m0_uint128 *id, void *datum)
 
static struct m0_dtm_historypa_history (struct m0_dtm_dtx_party *pa)
 
M0_INTERNAL int m0_dtm_dtx_init (struct m0_dtm_dtx *dtx, const struct m0_uint128 *id, struct m0_dtm *dtm, uint32_t nr_max)
 
M0_INTERNAL void m0_dtm_dtx_fini (struct m0_dtm_dtx *dtx)
 
M0_INTERNAL void m0_dtm_dtx_add (struct m0_dtm_dtx *dtx, struct m0_dtm_oper *oper)
 
M0_INTERNAL void m0_dtm_dtx_close (struct m0_dtm_dtx *dtx)
 
static void dtx_noop (void *unused)
 
static int dtx_find (struct m0_dtm *dtm, const struct m0_dtm_history_type *ht, const struct m0_uint128 *id, struct m0_dtm_history **out)
 
static const struct m0_uint128dtx_id (const struct m0_dtm_history *history)
 
static void dtx_fixed (struct m0_dtm_history *history)
 
static int dtx_srv_find (struct m0_dtm *dtm, const struct m0_dtm_history_type *ht, const struct m0_uint128 *id, struct m0_dtm_history **out)
 
static const struct m0_uint128dtx_srv_id (const struct m0_dtm_history *history)
 

Variables

static const struct m0_dtm_history_ops dtx_ops
 
static const struct m0_dtm_history_ops dtx_srv_ops
 
static const struct m0_dtm_history_type_ops dtx_htype_ops
 
M0_INTERNAL const struct m0_dtm_history_type m0_dtm_dtx_htype
 
static const struct m0_dtm_history_type_ops dtx_srv_htype_ops
 
M0_INTERNAL const struct m0_dtm_history_type m0_dtm_dtx_srv_htype