Motr  M0
m0_ha_link Struct Reference

#include <link.h>

Collaboration diagram for m0_ha_link:
Collaboration graph

Data Fields

struct m0_ha_link_cfg hln_cfg
 
struct m0_ha_link_conn_cfg hln_conn_cfg
 
struct m0_ha_link_conn_cfg hln_conn_reconnect_cfg
 
struct m0_rpc_link hln_rpc_link
 
struct m0_tlink hln_service_link
 
uint64_t hln_service_magic
 
struct m0_mutex hln_lock
 
struct m0_sm_group hln_sm_group
 
struct m0_sm hln_sm
 
struct m0_ha_lq hln_q_in
 
struct m0_ha_lq hln_q_out
 
struct m0_fom hln_fom
 
struct m0_localityhln_fom_locality
 
bool hln_fom_is_stopping
 
bool hln_fom_enable_wakeup
 
struct m0_semaphore hln_start_wait
 
struct m0_semaphore hln_stop_cond
 
struct m0_chan hln_stop_chan
 
struct m0_mutex hln_stop_chan_lock
 
bool hln_waking_up
 
struct m0_sm_ast hln_waking_ast
 
struct m0_ha_msghln_msg_to_send
 
bool hln_confirmed_update
 
struct m0_fop hln_outgoing_fop
 
struct m0_ha_link_msg_fop hln_req_fop_data
 
uint64_t hln_req_fop_seq
 
bool hln_replied
 
bool hln_released
 
struct m0_clink hln_rpc_wait
 
bool hln_rpc_event_occurred
 
bool hln_reconnect
 
bool hln_reconnect_cfg_is_set
 
bool hln_reconnect_wait
 
struct m0_sm_timer hln_reconnect_wait_timer
 
int hln_rpc_rc
 
int hln_reply_rc
 
bool hln_no_new_delivered
 
uint64_t hln_tag_broadcast_recv
 
uint64_t hln_tag_broadcast_delivery
 
struct m0_mutex hln_quiesce_chan_lock
 
struct m0_chan hln_quiesce_chan
 
struct m0_clink hln_quiesce_wait
 
bool hln_quiesced
 
bool hln_cb_disconnecting
 
bool hln_cb_reused
 
int hln_backoff_rc
 
uint64_t hln_backoff_nr
 
uint64_t hln_service_ref_counter
 
struct m0_uint128 hln_service_link_id
 
struct m0_uint128 hln_service_connection_id
 
struct m0_chanhln_service_release_chan
 
bool hln_service_quiescing
 
bool hln_service_released
 

Detailed Description

Definition at line 186 of file link.h.

Field Documentation

◆ hln_backoff_nr

uint64_t hln_backoff_nr

Definition at line 256 of file link.h.

◆ hln_backoff_rc

int hln_backoff_rc

Definition at line 255 of file link.h.

◆ hln_cb_disconnecting

bool hln_cb_disconnecting

Protected by ::hln_lock

Definition at line 250 of file link.h.

◆ hln_cb_reused

bool hln_cb_reused

Protected by ::hln_lock

Definition at line 252 of file link.h.

◆ hln_cfg

struct m0_ha_link_cfg hln_cfg

Definition at line 187 of file link.h.

◆ hln_confirmed_update

bool hln_confirmed_update

It's protected by outgoing fom sm group lock

Definition at line 219 of file link.h.

◆ hln_conn_cfg

struct m0_ha_link_conn_cfg hln_conn_cfg

Protected by hln_lock.

Definition at line 189 of file link.h.

◆ hln_conn_reconnect_cfg

struct m0_ha_link_conn_cfg hln_conn_reconnect_cfg

Protected by hln_lock

Definition at line 191 of file link.h.

◆ hln_fom

struct m0_fom hln_fom

Definition at line 207 of file link.h.

◆ hln_fom_enable_wakeup

bool hln_fom_enable_wakeup

Definition at line 210 of file link.h.

◆ hln_fom_is_stopping

bool hln_fom_is_stopping

Definition at line 209 of file link.h.

◆ hln_fom_locality

struct m0_locality* hln_fom_locality

Definition at line 208 of file link.h.

◆ hln_lock

struct m0_mutex hln_lock

Definition at line 196 of file link.h.

◆ hln_msg_to_send

struct m0_ha_msg* hln_msg_to_send

Definition at line 217 of file link.h.

◆ hln_no_new_delivered

bool hln_no_new_delivered

Definition at line 240 of file link.h.

◆ hln_outgoing_fop

struct m0_fop hln_outgoing_fop

Definition at line 220 of file link.h.

◆ hln_q_in

struct m0_ha_lq hln_q_in

Definition at line 205 of file link.h.

◆ hln_q_out

struct m0_ha_lq hln_q_out

Definition at line 206 of file link.h.

◆ hln_quiesce_chan

struct m0_chan hln_quiesce_chan

Definition at line 246 of file link.h.

◆ hln_quiesce_chan_lock

struct m0_mutex hln_quiesce_chan_lock

Definition at line 245 of file link.h.

◆ hln_quiesce_wait

struct m0_clink hln_quiesce_wait

Definition at line 247 of file link.h.

◆ hln_quiesced

bool hln_quiesced

Definition at line 248 of file link.h.

◆ hln_reconnect

bool hln_reconnect

Definition at line 233 of file link.h.

◆ hln_reconnect_cfg_is_set

bool hln_reconnect_cfg_is_set

Definition at line 234 of file link.h.

◆ hln_reconnect_wait

bool hln_reconnect_wait

Definition at line 235 of file link.h.

◆ hln_reconnect_wait_timer

struct m0_sm_timer hln_reconnect_wait_timer

Definition at line 236 of file link.h.

◆ hln_released

bool hln_released

Definition at line 230 of file link.h.

◆ hln_replied

bool hln_replied

Definition at line 229 of file link.h.

◆ hln_reply_rc

int hln_reply_rc

It's protected by outgoing fom sm group lock

Definition at line 239 of file link.h.

◆ hln_req_fop_data

struct m0_ha_link_msg_fop hln_req_fop_data

Definition at line 221 of file link.h.

◆ hln_req_fop_seq

uint64_t hln_req_fop_seq

The sequence number for the outgoing fops sent over the link. It's incremented each time the fop is sent ot resent.

It's protected by hln_lock.

Definition at line 228 of file link.h.

◆ hln_rpc_event_occurred

bool hln_rpc_event_occurred

Definition at line 232 of file link.h.

◆ hln_rpc_link

struct m0_rpc_link hln_rpc_link

Definition at line 192 of file link.h.

◆ hln_rpc_rc

int hln_rpc_rc

Definition at line 237 of file link.h.

◆ hln_rpc_wait

struct m0_clink hln_rpc_wait

Definition at line 231 of file link.h.

◆ hln_service_connection_id

struct m0_uint128 hln_service_connection_id

Definition at line 261 of file link.h.

◆ hln_service_link

struct m0_tlink hln_service_link

ha_link_service::hls_links

Definition at line 194 of file link.h.

◆ hln_service_link_id

struct m0_uint128 hln_service_link_id

Definition at line 260 of file link.h.

◆ hln_service_magic

uint64_t hln_service_magic

Definition at line 195 of file link.h.

◆ hln_service_quiescing

bool hln_service_quiescing

Definition at line 263 of file link.h.

◆ hln_service_ref_counter

uint64_t hln_service_ref_counter

Definition at line 259 of file link.h.

◆ hln_service_release_chan

struct m0_chan* hln_service_release_chan

Definition at line 262 of file link.h.

◆ hln_service_released

bool hln_service_released

Definition at line 264 of file link.h.

◆ hln_sm

struct m0_sm hln_sm

Protected by ::hln_sm_group.

See also
ha_link_sm_conf, m0_ha_link_state, m0_ha_link_chan(), m0_ha_link_state_get().

Definition at line 204 of file link.h.

◆ hln_sm_group

struct m0_sm_group hln_sm_group

This lock is always taken before hln_lock.

Definition at line 198 of file link.h.

◆ hln_start_wait

struct m0_semaphore hln_start_wait

Definition at line 211 of file link.h.

◆ hln_stop_chan

struct m0_chan hln_stop_chan

Definition at line 213 of file link.h.

◆ hln_stop_chan_lock

struct m0_mutex hln_stop_chan_lock

Definition at line 214 of file link.h.

◆ hln_stop_cond

struct m0_semaphore hln_stop_cond

Definition at line 212 of file link.h.

◆ hln_tag_broadcast_delivery

uint64_t hln_tag_broadcast_delivery

Protected by ::hln_sm_group

Definition at line 244 of file link.h.

◆ hln_tag_broadcast_recv

uint64_t hln_tag_broadcast_recv

Protected by ::hln_sm_group

Definition at line 242 of file link.h.

◆ hln_waking_ast

struct m0_sm_ast hln_waking_ast

Definition at line 216 of file link.h.

◆ hln_waking_up

bool hln_waking_up

Definition at line 215 of file link.h.


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