ha/service-mgmt/sm-common-1.0.0/src
Bin Qian 133da10b08 split-brain avoidance improvement
This change enables one way communication via BMC (if configured)
through mtce.
when 2 controllers lost all communications to each other.
The algorithm is:
when communications all lost,
both active and standby controllers, verify its interfaces (mgmt,
infra, and oam)
if active controller is healthy, it will request a bmc reset
thorugh mtce, against standby controller.
if standby controller is healthy, it will active itself and wait
a total 45 seconds before requesting a bmc reset through mtce,
against the active controller.

Changes also include:
1. adding new initial failover state.
   initial state is a state before the node is enabled
2. remove failover thread.
   using worker thread action to perform time consuming operations
3. remove entire failover action table

Story: 2003577
Task:  24901
Change-Id: I7d294d40e84469df6b6a6f6dd490cf3c4557b711
Signed-off-by: Bin Qian <bin.qian@windriver.com>
2018-11-08 20:18:43 +00:00
..
Makefile sm components to use C++11 standard 2018-08-20 15:44:01 +00:00
sm_debug.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_debug.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_debug_thread.c sm components to use C++11 standard 2018-08-20 15:44:01 +00:00
sm_debug_thread.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_eru_db.c sm components to use C++11 standard 2018-08-20 15:44:01 +00:00
sm_eru_db.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_eru_dump.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_eru_main.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_eru_process.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_eru_process.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_hw.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_hw.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_limits.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_list.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_netlink.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_netlink.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_node_stats.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_node_stats.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_node_utils.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_node_utils.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_selobj.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_selobj.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_sha512.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_sha512.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_thread_health.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_thread_health.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_time.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_time.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_timer.c sm components to use C++11 standard 2018-08-20 15:44:01 +00:00
sm_timer.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_trap.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_trap.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_trap_thread.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_trap_thread.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_types.c split-brain avoidance improvement 2018-11-08 20:18:43 +00:00
sm_types.h split-brain avoidance improvement 2018-11-08 20:18:43 +00:00
sm_util_types.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_util_types.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_utils.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_utils.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_uuid.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_uuid.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_watchdog_main.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_watchdog_module.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_watchdog_module.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_watchdog_nfs.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_watchdog_nfs.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_watchdog_process.c StarlingX open source release updates 2018-05-31 07:36:26 -07:00
sm_watchdog_process.h StarlingX open source release updates 2018-05-31 07:36:26 -07:00