osaf/services/saf/amf/amfd/include/si.h | 1 +
osaf/services/saf/amf/amfd/include/si_dep.h | 1 -
osaf/services/saf/amf/amfd/si_dep.cc | 23 +++++++++++------------
3 files changed, 12 insertions(+), 13 deletions(-)
diff --git a/osaf/services/saf/amf/amfd/include/si.h
b/osaf/services/saf/amf/amfd/include/si.h
--- a/osaf/services/saf/amf/amfd/include/si.h
+++ b/osaf/services/saf/amf/amfd/include/si.h
@@ -150,6 +150,7 @@ public:
void send_active_to_dependents();
bool sponsors_assigned_active();
uint32_t unassign_dependent(AVD_CL_CB *cb);
+ void stop_tol_timer(AVD_CL_CB *cb);
private:
diff --git a/osaf/services/saf/amf/amfd/include/si_dep.h
b/osaf/services/saf/amf/amfd/include/si_dep.h
--- a/osaf/services/saf/amf/amfd/include/si_dep.h
+++ b/osaf/services/saf/amf/amfd/include/si_dep.h
@@ -73,7 +73,6 @@ void avd_sidep_tol_tmr_evh(AVD_CL_CB *cb
void avd_sidep_assign_evh(AVD_CL_CB *cb, struct avd_evt_tag *evt);
void avd_sidep_unassign_evh(AVD_CL_CB *cb, struct avd_evt_tag *evt);
void avd_sidep_update_si_dep_state_for_all_sis(AVD_SG *sg);
-void sidep_stop_tol_timer(AVD_CL_CB *cb, AVD_SI *si);
extern SaAisErrorT avd_sidep_config_get(void);
extern void avd_sidep_constructor(void);
extern void avd_sidep_reset_dependents_depstate_in_sufault(AVD_SI *si);
diff --git a/osaf/services/saf/amf/amfd/si_dep.cc
b/osaf/services/saf/amf/amfd/si_dep.cc
--- a/osaf/services/saf/amf/amfd/si_dep.cc
+++ b/osaf/services/saf/amf/amfd/si_dep.cc
@@ -359,33 +359,32 @@ static AVD_SI_DEP *sidep_db_find(SaNameT
/*****************************************************************************
- * Function: sidep_stop_tol_timer
+ * Function: stop_tol_timer
*
* Purpose: This function is been called when SI was unassigned, checks
* whether tolerance timers are running for this SI (because
* of its sponsor-SI unassignment), if yes just stop them.
*
* Input: cb - ptr to AVD control block
- * si - ptr to AVD_SI struct.
*
* Returns:
*
* NOTES:
*
**************************************************************************/
-void sidep_stop_tol_timer(AVD_CL_CB *cb, AVD_SI *dep_si)
+void AVD_SI::stop_tol_timer(AVD_CL_CB *cb)
{
AVD_SI_DEP *rec;
- AVD_SPONS_SI_NODE *spons_si_node = dep_si->spons_si_list;
+ AVD_SPONS_SI_NODE *spons_si_node = spons_si_list;
while (spons_si_node) {
- if ((rec = sidep_db_find(&spons_si_node->si->name,
&dep_si->name)) != NULL) {
+ if ((rec = sidep_db_find(&spons_si_node->si->name, &name)) !=
NULL) {
if (rec->si_dep_timer.is_active == true) {
avd_stop_tmr(cb, &rec->si_dep_timer);
- TRACE("Tolerance timer stopped for '%s'",
dep_si->name.value);
+ TRACE("Tolerance timer stopped for '%s'",
name.value);
- if (dep_si->tol_timer_count > 0) {
- dep_si->tol_timer_count--;
+ if (tol_timer_count > 0) {
+ tol_timer_count--;
}
}
}
@@ -1572,7 +1571,7 @@ bool avd_sidep_is_si_failover_possible(A
/* Dependant SI and Tolerance timer is running
* No need to to do role failover stop the Tolerance
timer and delete the assignments
*/
- sidep_stop_tol_timer(avd_cb, si);
+ si->stop_tol_timer(avd_cb);
si->unassign();
failover_possible = false;
@@ -1667,7 +1666,7 @@ bool avd_sidep_is_si_failover_possible(A
if ((failover_possible == false) && (valid_standby ==
false)) {
/* There is no Active assignment and no valid
Standby which can take Active assignment */
if (si->si_dep_state ==
AVD_SI_TOL_TIMER_RUNNING)
- sidep_stop_tol_timer(avd_cb, si);
+ si->stop_tol_timer(avd_cb);
for (tmp_sisu = si->list_of_sisu;tmp_sisu !=
NULL;tmp_sisu = tmp_sisu->si_next)
if (tmp_sisu->fsm !=
AVD_SU_SI_STATE_UNASGN)
avd_susi_del_send(tmp_sisu);
@@ -2273,7 +2272,7 @@ void sidep_update_si_self_dep_state(AVD_
si->set_dep_state(AVD_SI_ASSIGNED);
if (si->tol_timer_count > 0)
/*Stop any toleracne timer if running */
- sidep_stop_tol_timer(avd_cb, si);
+ si->stop_tol_timer(avd_cb);
} else {
/*SI is unassigned. Modify its si_dep_state to
AVD_SI_NO_DEPENDENCY if it does not have any sponsor
@@ -2443,7 +2442,7 @@ void sidep_process_ready_to_unassign_dep
} else {
/*since we are going to unassign the dependent
stop other timers*/
if (dep_si->tol_timer_count)
- sidep_stop_tol_timer(avd_cb, dep_si);
+ dep_si->stop_tol_timer(avd_cb);
if ((avd_cb->avail_state_avd ==
SA_AMF_HA_ACTIVE) &&
(dep_si->si_dep_state !=
AVD_SI_UNASSIGNING_DUE_TO_DEP))
------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel