state machine.
Abstract state machine. Possibly persistent, possibly replicated.
An instance of m0_sm is embedded in a concrete state machine (e.g., a per-endpoint rpc layer formation state machine, a resource owner state machine (m0_rm_owner), &c.).
m0_sm stores state machine current state in m0_sm::sm_state. The semantics of state are not defined by this module except for classifying states into a few broad classes, see m0_sm_state_descr_flags. The only restriction on states is that maximal state (as a number) should not be too large, because all states are enumerated in a m0_sm::sm_conf::scf_state[] array.
- Invariant
- m0_sm_invariant() (under mach->sm_grp->s_lock).
Definition at line 301 of file sm.h.