Motr  M0
service.c File Reference
#include "lib/errno.h"
#include "lib/trace.h"
#include "lib/tlist.h"
#include "lib/time.h"
#include "lib/bob.h"
#include "lib/memory.h"
#include "rpc/link.h"
#include "rpc/service.h"
#include "rpc/rev_conn.h"
#include "rpc/rpc_internal.h"
#include "reqh/reqh.h"
#include "reqh/reqh_service.h"
#include "ha/note_fops.h"
Include dependency graph for service.c:

Go to the source code of this file.

Macros

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_RPC
 

Functions

 M0_TL_DESCR_DEFINE (rev_conn, "Reverse Connections", static, struct m0_reverse_connection, rcf_linkage, rcf_magic, M0_RM_REV_CONN_LIST_MAGIC, M0_RM_REV_CONN_LIST_HEAD_MAGIC)
 
 M0_TL_DEFINE (rev_conn, static, struct m0_reverse_connection)
 
 M0_BOB_DEFINE (M0_INTERNAL, &rpc_svc_bob, m0_rpc_service)
 
static int rpc_service_start (struct m0_reqh_service *service)
 
static void rpc_service_stop (struct m0_reqh_service *service)
 
static void rpc_service_fini (struct m0_reqh_service *service)
 
static int rpc_service_fop_accept (struct m0_reqh_service *service, struct m0_fop *fop)
 
static int rpc_service_allocate (struct m0_reqh_service **service, const struct m0_reqh_service_type *stype)
 
M0_INTERNAL int m0_rpc_service_register (void)
 
M0_INTERNAL void m0_rpc_service_unregister (void)
 
M0_INTERNAL struct m0_rpc_sessionm0_rpc_service_reverse_session_lookup (struct m0_reqh_service *service, const struct m0_rpc_item *item)
 
M0_INTERNAL int m0_rpc_service_reverse_session_get (struct m0_reqh_service *service, const struct m0_rpc_item *item, struct m0_clink *clink, struct m0_rpc_session **session)
 
static void rev_conn_free (struct m0_sm_group *grp, struct m0_sm_ast *ast)
 
static bool rev_conn_disconnected_cb (struct m0_clink *link)
 
M0_INTERNAL void m0_rpc_service_reverse_session_put (struct m0_rpc_session *sess)
 
M0_INTERNAL void m0_rpc_service_reverse_sessions_cleanup (struct m0_reqh_service *service)
 
M0_INTERNAL int m0_rpc_session_status (struct m0_rpc_session *session)
 
M0_INTERNAL struct m0_reqh_servicem0_reqh_rpc_service_find (struct m0_reqh *reqh)
 
M0_INTERNAL int m0_rpc_service_start (struct m0_reqh *reqh)
 
M0_INTERNAL void m0_rpc_service_stop (struct m0_reqh *reqh)
 

Variables

static const struct m0_bob_type rpc_svc_bob
 
static const struct m0_reqh_service_ops rpc_ops
 
static const struct m0_reqh_service_type_ops rpc_service_type_ops
 
struct m0_reqh_service_type m0_rpc_service_type
 

Macro Definition Documentation

◆ M0_TRACE_SUBSYSTEM

#define M0_TRACE_SUBSYSTEM   M0_TRACE_SUBSYS_RPC

Definition at line 24 of file service.c.