Motr  M0
note.c File Reference
#include "lib/trace.h"
#include "conf/confc.h"
#include "fop/fom_generic.h"
#include "fop/fop.h"
#include "lib/chan.h"
#include "lib/memory.h"
#include "lib/finject.h"
#include "rpc/rpc_internal.h"
#include "rpc/rpclib.h"
#include "rpc/session.h"
#include "fid/fid.h"
#include "module/instance.h"
#include "ha/note.h"
#include "ha/note_fops.h"
#include "ha/note_xc.h"
#include "ha/msg.h"
#include "ha/link.h"
#include "ha/ha.h"
#include "motr/ha.h"
Include dependency graph for note.c:

Go to the source code of this file.

Data Structures

struct  ha_note_handler_request
 

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_HA
 
#define N(i)   (note->nv_note[i])
 
#define S_CASE(x)   case x: return # x
 

Functions

static bool note_invariant (const struct m0_ha_nvec *note, bool known)
 
M0_INTERNAL int m0_ha_state_get (struct m0_ha_nvec *note, struct m0_chan *chan)
 
M0_INTERNAL void m0_ha_state_set (const struct m0_ha_nvec *note)
 
M0_INTERNAL void m0_ha_local_state_set (const struct m0_ha_nvec *nvec)
 
static void ha_state_single_fop_data_free (struct m0_fop *fop)
 
static void ha_state_single_replied (struct m0_rpc_item *item)
 
M0_INTERNAL void m0_ha_state_single_post (struct m0_ha_nvec *nvec)
 
static void ha_state_accept (struct m0_confc *confc, const struct m0_ha_nvec *note, uint64_t ignore_same_state)
 
M0_INTERNAL void m0_ha_state_accept (const struct m0_ha_nvec *note, bool ignore_same_state)
 
M0_INTERNAL void m0_ha_msg_accept (const struct m0_ha_msg *msg, struct m0_ha_link *hl)
 
M0_INTERNAL uint64_t m0_ha_msg_nvec_send (const struct m0_ha_nvec *nvec, uint64_t id_of_get, bool ignore_same_state, int direction, struct m0_ha_link *hl)
 
 M0_TL_DESCR_DEFINE (ha_gets, "m0_ha_note_handler::hmh_gets", static, struct ha_note_handler_request, hsg_tlink, hsg_magic, 20, 21)
 
 M0_TL_DEFINE (ha_gets, static, struct ha_note_handler_request)
 
static void ha_note_handler_msg (struct m0_ha_handler *hh, struct m0_ha *ha, struct m0_ha_link *hl, struct m0_ha_msg *msg, uint64_t tag, void *data)
 
M0_INTERNAL int m0_ha_note_handler_init (struct m0_ha_note_handler *hnh, struct m0_ha_dispatcher *hd)
 
M0_INTERNAL void m0_ha_note_handler_fini (struct m0_ha_note_handler *hnh)
 
M0_INTERNAL uint64_t m0_ha_note_handler_add (struct m0_ha_note_handler *hnh, struct m0_ha_nvec *nvec_req, struct m0_chan *chan)
 
M0_INTERNAL void m0_ha_note_handler_signal (struct m0_ha_note_handler *hnh, struct m0_ha_nvec *nvec_rep, uint64_t id)
 
M0_INTERNAL const char * m0_ha_state2str (enum m0_ha_obj_state state)
 

Variables

struct m0_rpc_item_ops ha_ri_ops
 

Macro Definition Documentation

◆ N

#define N (   i)    (note->nv_note[i])

◆ S_CASE

#define S_CASE (   x)    case x: return # x