Motr  M0
m0_reqh_service Struct Reference

#include <reqh_service.h>

Collaboration diagram for m0_reqh_service:
Collaboration graph

Data Fields

struct m0_fid rs_service_fid
 
const struct m0_reqh_service_typers_type
 
unsigned rs_level
 
int rs_fom_key
 
struct m0_sm rs_sm
 
struct m0_mutex rs_mutex
 
const struct m0_reqh_service_opsrs_ops
 
struct m0_reqhrs_reqh
 
struct m0_tlink rs_linkage
 
struct m0_reqh_contextrs_reqh_ctx
 
struct m0_buf rs_ss_param
 
uint64_t rs_magix
 

Detailed Description

Represents a service on node. Multiple services in a motr address space share the same request handler. There exist a list of services in struct m0_reqh, m0_reqh::rh_services, sharing the same request handler.

Definition at line 216 of file reqh_service.h.

Field Documentation

◆ rs_fom_key

int rs_fom_key

Key for per-locality-per-svc fom count.

Definition at line 238 of file reqh_service.h.

◆ rs_level

unsigned rs_level

Same type of services may have different levels to manage their cleanup order. If this level is 0 during service creation, m0_reqh_service_type::rst_level is copied by m0_reqh_service_allocate().

Definition at line 236 of file reqh_service.h.

◆ rs_linkage

struct m0_tlink rs_linkage

Linkage into list of services in request handler.

See also
m0_reqh::rh_services

Definition at line 266 of file reqh_service.h.

◆ rs_magix

uint64_t rs_magix

Service magic to check consistency of service instance.

Definition at line 286 of file reqh_service.h.

◆ rs_mutex

struct m0_mutex rs_mutex

Protects service state transitions.

Definition at line 249 of file reqh_service.h.

◆ rs_ops

const struct m0_reqh_service_ops* rs_ops

Service specific operations vector.

Definition at line 254 of file reqh_service.h.

◆ rs_reqh

struct m0_reqh* rs_reqh

Request handler this service belongs to.

Definition at line 259 of file reqh_service.h.

◆ rs_reqh_ctx

struct m0_reqh_context* rs_reqh_ctx

service context

Definition at line 271 of file reqh_service.h.

◆ rs_service_fid

struct m0_fid rs_service_fid

Service id that should be unique throughout the cluster.

Definition at line 220 of file reqh_service.h.

◆ rs_sm

struct m0_sm rs_sm

Service state machine.

See also
m0_reqh_service_state

Definition at line 244 of file reqh_service.h.

◆ rs_ss_param

struct m0_buf rs_ss_param

The parameter specifying whatever information the service needs to start up.

Currently this buffer is interpreted by confd_start().

See also
m0_sssservice_req::ss_param

Definition at line 281 of file reqh_service.h.

◆ rs_type

const struct m0_reqh_service_type* rs_type

Service type specific structure to hold service specific implementations of its operations. This can be used to initialise service specific objects such as fops.

Definition at line 227 of file reqh_service.h.


The documentation for this struct was generated from the following file: