Motr
M0
|
#include <confc.h>
Data Fields | |
struct m0_sm_group * | cc_group |
struct m0_mutex | cc_lock |
struct m0_conf_cache | cc_cache |
struct m0_conf_obj * | cc_root |
struct m0_rpc_link | cc_rlink |
uint32_t | cc_nr_ctx |
struct m0_confc_gate_ops * | cc_gops |
struct m0_clink | cc_drain |
uint64_t | cc_rpc_timeout |
struct m0_chan | cc_unattached |
struct m0_mutex | cc_unatt_guard |
uint64_t | cc_magic |
struct m0_conf_cache cc_cache |
struct m0_clink cc_drain |
The link to fire m0_confc_gate_ops::go_drain() event on. Added to m0_confc::cc_unattached channel explicitly by calling m0_confc_gate_ops_set().
struct m0_confc_gate_ops* cc_gops |
Gating ops. Allowed to be NULL indicating in such case no gating in effect. Set up by rconfc containing the confc. Any access to the ops, reading or writing, must be protected by explicit obtaining m0_confc::cc_lock.
struct m0_sm_group* cc_group |
Serialises configuration retrieval state machines (m0_confc_ctx::fc_mach).
struct m0_mutex cc_lock |
Confc cache lock.
If both group and cache locks are needed, group lock must be acquired first.
uint32_t cc_nr_ctx |
The number of configuration retrieval contexts associated with this m0_confc.
This value is incremented by m0_confc_ctx_init() and decremented by m0_confc_ctx_fini().
struct m0_rpc_link cc_rlink |
struct m0_conf_obj* cc_root |
Root of the DAG of configuration objects.
The object may be opened explicitly with m0_confc_root_open(), e.g. for reading conf version number m0_conf_root::rt_verno, and this way appears pinned as any other object. Under the circumstances the root object requires for being closed same explicit way.
uint64_t cc_rpc_timeout |
struct m0_mutex cc_unatt_guard |
Mutex guarding m0_confc::cc_unattached
struct m0_chan cc_unattached |
The channel to signal on when no more attached context remains. Signaled inside m0_confc_ctx_fini(). i.e. m0_confc::cc_nr_ctx reached 0.